SQL遇到的几个小细节

特殊字符作普通字符处理时

一、特殊符号作为普通字符查询时
模糊查询中的通配符%,等,若是本身就作为查询的字符,如何处理呢?
使用转义。
比如
#案例3:查询员工名字第二个字符为_的员工名字
可以用\转义
,即_。
也可以标准的转义手法说明,即 ‘X_’ ESCAPE ‘X’;来说明X是转义字符,任意都可以
SELECT
last_name
FROM
employees
WHERE
last_name LIKE ‘@%’ ESCAPE ‘@’;

空值NULL在select,where,having等语句中处理不当,报错

二、含有空值的字段参与运算时,采用IFNULL(expr1,expr2)
#算术运算时处理空值,null+数值为null
#查询员工号为176的员工的姓名和部门号和年薪
#年薪=月薪12(1+奖金率),计算字段
SELECT
employee_id,department_id,
salary12(1+IFNULL(commission_pct,0)) AS salary_year
FROM
employees
WHERE
employee_id=176;

三、含有空值的字段参与拼接时,会报错或为null。
#+的作用,加法运算尔
#想查询员工名和姓,奖金率拼接成一个字段,显示为姓名
#使用concat拼接,但是不能拼接null值,否则拼接值变成null
SELECT CONCAT(first_name,’,’,last_name,’,’,IFNULL(commission_pct,0))
AS 姓名
FROM employees;

mysql中函数

mysql中的函数都有返回值,且不做单独使用。与select结合使用,①执行函数的函数体②查询对应的返回值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值