MySQL高級語句

1、MySQL截取數據
(1)身份證截取出生日期

UPDATE 表名 SET 列名1 = cast(substring(列名2,7,8) as date)

(2)身份證截取生日

UPDATE 表名 SET 列名1 = DATE_FORMAT(cast(substring(列名2,7,8) as date), '%m-%d')

2、根據身份證號更新性別字段

UPDATE 表名 SET 列名1 = '男' WHERE substring(列名2,17,1)%2=1

UPDATE 表名 SET 列名1 = '女' WHERE substring(列名2,17,1)%2=0

3、查詢兩張表不同的數據

select * from 表名1 where (select count(1) from 表名2 where 表名2.列名2 = 表名1.列名1) = 0

查詢表1中有,表2中沒有的數據

SELECT 表名1.* FROM 表名1 LEFT JOIN 表名2 ON 表名1.列名1 = 表名2.列名2 WHERE 表名2.列名2 IS NULL;

4、驗證數據唯一性

SELECT * FROM 表名 WHERE 列名 in (SELECT 列名 FROM 表名 GROUP BY 列名 HAVING COUNT(*)>1)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章