MySql

MYSQL数据表操作

MYSQL数据表操作

  • 拷贝table1的全部数据到table2
INSERT INTO table2 SELECT * FROM table1
  • 拷贝table1的第n条数据到table2
INSERT INTO table2 SELECT * FROM table1  WHERE id=n
  • 拷贝table1的第n条数据的t1、t2字段到table2
INSERT INTO table2 ( t1 , t2 ) SELECT t1 , t2  FROM table1  WHERE id=n
  • 创建table2,同时拷贝table1的数据和结构到table2
CREATE TABLE table2 SELECT * FROM table1
  • 创建table2,只拷贝table1的结构到table2,不拷贝数据
CREATE TABLE table2 LIKE table1

MySQL提取身份证号码中的生日和性别

设表格为t身份证号码列为sfz,生日列为sr,性别列为xb:

UPDATE `t` SET `sr`=cast(substring(sfz,7,8) as date) WHERE 1
//提取表t中sfz列数值第7位开始的8位数字并转换为date格式,更新到sr列
UPDATE `t` SET `xb` = MOD(substring(`sfz`,17,1),2) WHERE 1
//提取表t中sfz列数值第17位开始的1位数字并对2取余(奇数为1,男;偶数为0,女)

仅对18位身份证号码有效