MySQL 的系统函数
提供了很多的系统,这些系统可以对数据进行特殊的处理,下面表格列举了大部分的系统,本小节选择一些代表性的系统演示说明。
1. CONCAT 拼接字段
以 teacher 表为例,将教师信息的 name 和 id_number 字段的值拼接在一起:
SELECT *,CONCAT(name,id_number) AS name_id_number FROM teacher;
结果如下:
Tips:如上图所示, 其中 name_id_number 的值是 CONCAT() 将 name 和 id_number 的值拼接在一起。
2. GROUP_CONCAT拼接分组字段
以 course 和 teacher 表内连接分组为例,并使用 GROUP_CONCAT 将指定的分组字段拼接在一起:
SELECT .teacher_id,t.*,GROUP_CONCAT(.id) AS new_strFROM course LEFT JOIN teacher t ON .teacher_id=t.id GROUP BY .teacher_id;
结果如下图;
Tips:如上图所示, 其中 new_str 的值是 GROUP_CONCAT() 将 c.id
的值拼接在一起,认是 ‘,’ 拼接。
3. ()当前日期和时间
SELECT () AS date_time;
结果如下图:
4. UNIX_TIMESTAMP()将日期转化为UNIX时间戳
将当前时间转化为 UNIX
时间戳:
SELECT UNIX_TIMESTAMP();
结果如下图:
Tips:如上图所示, 其中 UNIX_TIMESTAMP()
认当前时间戳,也可以指定日期的时间戳,例如 UNIX_TIMESTAMP('2012-12-21')
的取值为 1356019200
。
5. 小结
本小节介绍了 提供的系统,这里只是列举了很多常见系统,选取了几个代表性的,其他系统的使用完全可以参照上述举例,需要注意的是之前的聚合也属于系统,上述演示的几个系统可以直接对数据值进行处理,也可以对出来的结果集字段列进行处理,例如将 teacher 表 name 字段出来的值转化为大写字母:
SELECT *,UPPER(name) AS up_name FROM teacher;
结果如下图: