常用SQL函数以及语法

函数

时间相关函数

MAX()
MIN()
COUNT(): 计算
CONCAT(): 连接
|
|
TO_DAYS(时间字段): 计算0000年到{时间字段}的天数

SELECT * FROM chat_log WHERE TO_DAYS(create_time) = TO_DAYS(NOW()); --查询今天的数据

|
|
REPLACE(字段, 待修改的字符串, 修改后的字符串): 替换字段中的字符串

SELECT REPLACE('hello, lilei', 'lilei', 'peter') --hello, peter

|
|
DATE_SUB(NOW(), INTERVAL 1 MINUTE/HOUR/DAY): 查询距今某个时间段的数据

SELECT * FROM javastudy.chat_log WHERE create_time > DATE_SUB(NOW(), INTERVAL 7 DAY);

|
|
IFNULL(字段, 设定值): 如果某个字段值为null, 则让它等于设定值

SELECT IFNULL(`password`, 'qqq') FROM javastudy.userinfo;

|
|
FIND_IN_SET(str, column)并且字段值之间用,分开。:查询字符串str是否在column

SELECT FIND_IN_SET('a', 'a,b,c,d'); -- 1

语法

INSERT IGNORE INTO table: 当插入数据时,如出现错误时,如重复数据,将不返回错误,只以警告形式返回。所以使用ignore请确保语句本身没有问题,否则也会被忽略掉

REPLACE INTO: 如果存在primary or unique相同的记录,则先删除掉。再插入新记录。

INSERT INTO table (a, b) VALUES (A, B) ON DUPLICATE KEY UPDATE: 如果主键重复,就更新该条记录,否则就添加。

INSERT INTO `tb_user`(
    id,
    username,
    password
) VALUES (
    #{id},
    #{username},
    #{password}
) ON DUPLICATE KEY UPDATE
    username = #{username},
    password = #{password}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ORACLE自学教程 --create tabletestone ( id number, --序号usernam...
    落叶寂聊阅读 4,827评论 0 0
  • 手动不易,转发请注明出处 --Trance 数据库系统命令: (1).查看存储过程状态:show pro...
    Trance_b54c阅读 5,684评论 0 8
  • 花了3天时间学习MySql,考了个二级MySql 书籍参考:高等教育出版社《全国计算机等级考试二级教程-MySQL...
    如果仲有听日阅读 5,081评论 4 4
  • 总结了一些开发中常用的函数: usleep() //函数延迟代码执行若干微秒。 unpack() //函数从二进制...
    ADL2022阅读 3,321评论 0 3
  • 七 走出咖啡厅,夕瑶犹豫了一下是等爸爸妈妈一起回去,还是自己先回去。她想还是随便走走吧!她已经很久没有这样在街边散...
    李沐遥阅读 1,313评论 0 0