函數(shù)
MAX()
MIN()
COUNT()
: 計(jì)算
CONCAT()
: 連接
|
|
TO_DAYS(時(shí)間字段)
: 計(jì)算0000年到{時(shí)間字段}的天數(shù)
SELECT * FROM chat_log WHERE TO_DAYS(create_time) = TO_DAYS(NOW()); --查詢今天的數(shù)據(jù)
|
|
REPLACE(字段, 待修改的字符串, 修改后的字符串)
: 替換字段中的字符串
SELECT REPLACE('hello, lilei', 'lilei', 'peter') --hello, peter
|
|
DATE_SUB(NOW(), INTERVAL 1 MINUTE/HOUR/DAY)
: 查詢距今某個(gè)時(shí)間段的數(shù)據(jù)
SELECT * FROM javastudy.chat_log WHERE create_time > DATE_SUB(NOW(), INTERVAL 7 DAY);
|
|
IFNULL(字段, 設(shè)定值)
: 如果某個(gè)字段值為null
, 則讓它等于設(shè)定值
SELECT IFNULL(`password`, 'qqq') FROM javastudy.userinfo;
|
|
FIND_IN_SET(str, column)
并且字段值之間用,
分開(kāi)纬傲。:查詢字符串str
是否在column
中
SELECT FIND_IN_SET('a', 'a,b,c,d'); -- 1
語(yǔ)法
INSERT IGNORE INTO table
: 當(dāng)插入數(shù)據(jù)時(shí)思喊,如出現(xiàn)錯(cuò)誤時(shí),如重復(fù)數(shù)據(jù)响驴,將不返回錯(cuò)誤秀存,只以警告形式返回捶码。所以使用ignore請(qǐng)確保語(yǔ)句本身沒(méi)有問(wèn)題,否則也會(huì)被忽略掉
REPLACE INTO
: 如果存在primary or unique相同的記錄或链,則先刪除掉惫恼。再插入新記錄。
INSERT INTO table (a, b) VALUES (A, B) ON DUPLICATE KEY UPDATE
: 如果主鍵重復(fù)澳盐,就更新該條記錄祈纯,否則就添加。
INSERT INTO `tb_user`(
id,
username,
password
) VALUES (
#{id},
#{username},
#{password}
) ON DUPLICATE KEY UPDATE
username = #{username},
password = #{password}