本文共 798 字,大约阅读时间需要 2 分钟。
char():
返回整数所对应的字符值
ascii():
返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回0。如果str是NULL,返回NULL
TO_DAYS():
语法:
TO_DAYS(date)
给定一个日期date,返回一个日期号码(自0年以来的天数)。
mysql> SELECTTO_DAYS(‘1997-10-07′);
返回 729669 就是从0年开始 到1997年10月7号之间的天数
TO_DAYS()不适用于公历日历(1582)出现之前的值,因为它不考虑日历更改时丢失的日期。在1582年之前的日期(可能在其他地区的其他年份),此功能的结果不可靠
列出表中所有学生人数大于等于5的科目:
select class from courses group by class having count(distinct student) >= 5
case when ... then ... else end 类似于 if else
前后交换位置,当最后一位是奇数时,不交换
# 使用left join 当最后一位是奇数时,student 为null,即改变后的 b.id 没有值与 a.id 相等
select a.id, case when b.student is null then a.student else b.student end as student
from seat a left join seat b
# 当a.id % 2 <> 0时,所有b.id -1 ,即向前移一位;当a.id % 2 = 0时,所有b.id(b.id没有改变) + 1 ,即向后移一位
on a.id = case when a.id % 2 <> 0 then b.id - 1 else b.id + 1 end
order by a.id
转载地址:http://mlqms.baihongyu.com/