一、并列
mysql> select concat(vend_name, vend_country) from vendors;
+---------------------------------+
| concat(vend_name, vend_country) |
+---------------------------------+
| Anvils R UsUSA |
| LT SuppliesUSA |
| ACMEUSA |
| Furball Inc.USA |
| Jet SetEngland |
| Jouets Et OursFrance |
+---------------------------------+
mysql> select concat(vend_name,'(', vend_country, ')') from vendors;
+------------------------------------------+
| concat(vend_name,'(', vend_country, ')') |
+------------------------------------------+
| Anvils R Us(USA) |
| LT Supplies(USA) |
| ACME(USA) |
| Furball Inc.(USA) |
| Jet Set(England) |
| Jouets Et Ours(France) |
+------------------------------------------+
二、日期函数
显示当前日期,时间
select curdate()
select curtime()
增加时间
#怎加20秒
select *,addtime(order_date,20) from orders;
#怎加具体时分秒
select *,addtime(order_date,"2:10:5") from orders;
#怎加20天
select *,adddate(order_date,20) from orders;
只显示日期
select order_num,order_date,date(order_date) from orders;
计算时间差值
select order_num,order_date,datediff(order_date,curdate()) from orders;
差值datediff 现在时间curdate()
where查找时间
查找9月时间
month(order_date)= 9
查找12日
day (order_date) = 12
三、返回值函数
转大写
Upper(列名)
转小写
lower(列名)
去空白
给定的数据列的值右边的空白删除(空格 制表符 换行符等产生的空白 )
lrtrim( 列名)
返回前两位(左边两位)字符
left(列名 ,返回数)
返回右边的两位
right(列名,返回数)
查看字符串长度
length(列名)
寻找字符串位置,返回值为字符串匹配到的第一个字符串位置
locate(指定字符串,列名/字符串)
输出为查找的指定字符串在,列表字符串里的位置
指定字符串未找到显示0
截取指定长度的字符串
substring(字符串,开始字符,截取长度)
四、数字运算函数
五、聚合函数
六、if函数
if(条件,v1,v2) 如果条件是TRUE则返回v1,否则返回v2
ifnull(v1,v2) 如果v1不为NULL,则返回v1,否则返回v2
七、case函数
格式:
CASE 表头名
WHEN 值1 THEN 输出结果
WHEN 值2 THEN 输出结果
WHEN 值3 THEN 输出结果
ELSE 输出结果
END
或
CASE
WHEN 判断条件1 THEN 输出结果
WHEN 判断条件2 THEN 输出结果
WHEN 判断条件3 THEN 输出结果
ELSE 输出结果
END