日期:2014-05-16  浏览次数:20473 次

mysql数据库的各种实用语句[收藏版]

?

1、清除数据表后,让表的自动编号从指定数开始
alter table 表名 AUTO_INCREMENT 编号起始数;

?

2、将一张表的数据插入另一张表中
? 如果2张表的字段一致,并且希望插入全部数据,可以用这种方法:?
? INSERT INTO 目标表 SELECT * FROM 来源表;?? //在两张表的字段布局都相同
?
? 如果只希望导入指定字段,可以用这种方法:
? 注意字段的顺序必须一致
? INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;

? 如果您需要只导入目标表中不存在的记录,可以使用这种方法:
? INSERT INTO 目标表
? (字段1, 字段2, ...)?
? SELECT 字段1, 字段2, ...?
? FROM 来源表?
? WHERE not exists (select * from 目标表?
? where 目标表.比较字段 = 来源表.比较字段);

?

?? 1>.插入多条记录:
? insert into insertTest2
? (id,name)
? select id,name
? from insertTest
? where not exists (select * from insertTest2? where insertTest2.id=insertTest.id);

?

?? 2>.插入一条记录:
? insert into insertTest??
? (id, name)???
? SELECT 100, 'liudehua'???
? FROM dual????
? WHERE not exists (select * from insertTest???
? where insertTest.id = 100);?
? 使用 dual 作表名,select 语句后面直接跟上要插入的字段的值。

?

3、将一个表中的字段更新到另一表中? update t1, t2 set t1.f1 = t2.f2 where t1.id = t2.t1id

?

4、过滤重复的数据?select distinct(id) from t1;

?

5、查找出重复的数据 select id from t1 group by id?having count(id) > 1

?

6、新记录被插入之前,旧记录被删除

? ? ?replace into a (id,name) values (2,'插入');

?

海口论坛??http://www.souhaikou.com

海口同城微博??http://t.souhaikou.com