1.删除表中重复记录,以前是加DISTINCT参数,导出到临时表,再导回来,无意中发现一条语句也可以。例如,去掉学号字段重复的记录:delete from [table] where ID not in (select max(ID) as ID from [table] group by 学号) 2.和上边类似,列出学号重复的记录数:select max(学号),count(学号) from [table] group by 学号 having count(学号)>0 3.列出数据表的字段select name from syscolumns where id=object_id('表名') 4.收缩数据库(会大大减小数据库和日志):dbcc shrinkdatabase(数据库名) 5.以前匹配如:2006开头的字段,都用left(字段,4)='2006',据说这样效率低,改写成这样:select 学号 from [表名] where 入学时间 like '2006%' 6.table1记录学生密码,table2记录学生信息,根据table2的学号,自动添加没有的学号到table1中INSERT INTO [table1] (学号, 姓名, 密码)SELECT 学号, 姓名, '111111' AS 密码FROM [table2]WHERE (NOT EXISTS (SELECT 学号 FROM [table1] WHERE [table2].学号 = [table1].学号)) 7.接上一个,删除table1中在table2里没有记录的学号DELETE FROM [table1] WHERE (NOT EXISTS(SELECT 学号 FROM [table2]WHERE [table1].学号 = [table2].学号)) 转载于:https://www.cnblogs.com/zwei1121/archive/2007/04/16/715370.html