您的位置:首页 > 数据库

自己用的SQL语句

2014-03-19 13:22 169 查看
--1查询所有姓名重复的字段

select * FROM 表

WHERE 字段 in( select 字段 FROM 表 group by 字段 having count(1)>1)

--例子

SELECT id,xm,xb,zp FROM dbo.Ryxx

WHERE Xm IN( SELECT xm FROM dbo.Ryxx GROUP BY Xm HAVING COUNT(1) >1 )

--2更新字段

UPDATE dbo.Ryxx SET zp=NULL WHERE xm='王淑娟'

--3查询所有照片为空的人员信息,并排序

SELECT dbo.Ryxx.Id,xm,xb,Dw,Zp FROM dbo.Ryxx

JOIN dbo.Dw ON dbo.Ryxx.Gzdw = dbo.Dw.Id

WHERE Zp IS NULL ORDER BY id ASC

--4一个表中不重复的字段值插入另一个新表中,并根据新表中此字段的值对应的ID插入总表中

----查询去掉重复GZDW字段

--SELECT DISTINCT Gzdw FROM dbo.AA

----将去掉重复的列插入单位表中

--INSERT INTO dbo.Dw ( Dw ) SELECT DISTINCT Gzdw FROM dbo.AA

----将单位表中的ID更新到人员信息表

--update dbo.AA set AA.Gzdw = Dw.Id FROM dbo.AA,dbo.Dw where AA.Gzdw=Dw.Dw

--5联合查询生成工资信息表,要求显示工资停发信息表中ID最大,即最后录入的那条信息

SELECT ROW_NUMBER() OVER (ORDER BY dbo.Ryxx.Id ASC) AS id,Xm,Xb,Sfzh,Gzzh,Gzje,Tfsj,Tfyy,Bfsj,Bfyy FROM dbo.Ryxx

LEFT JOIN dbo.Gzxx ON dbo.Gzxx.Yid = dbo.Ryxx.Id

--下句意思是连接工资信息表,并且只连接ID最大的一条记录

AND dbo.Gzxx.Id IN (Select max(id) FROM dbo.Gzxx group by Yid

WHERE ryzt=1)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: