常用Sql语句

来源:互联网 发布:第一次登陆阿里云 编辑:程序博客网 时间:2024/06/03 16:40

1.当表中有多条重复记录时只取一条

select * from (select *,row_number() over(partition by 销售单明细Id,员工编号 order by 销售单明细Id,员工编号) numid
from  View_SY员工业绩) a where a.numid=1

2.SQL2005 判断某列是否有外键引用,用Sql语句实现

select   oSub.name  AS  [子表名称],  fk.name AS  [外键名称],  SubCol.name AS [子表列名],  oMain.name  AS  [主表名称],  MainCol.name AS [主表列名]from   sys.foreign_keys fk      JOIN sys.all_objects oSub          ON (fk.parent_object_id = oSub.object_id)    JOIN sys.all_objects oMain         ON (fk.referenced_object_id = oMain.object_id)    JOIN sys.foreign_key_columns fkCols         ON (fk.object_id = fkCols.constraint_object_id)    JOIN sys.columns SubCol         ON (oSub.object_id = SubCol.object_id              AND fkCols.parent_column_id = SubCol.column_id)    JOIN sys.columns MainCol         ON (oMain.object_id = MainCol.object_id              AND fkCols.referenced_column_id = MainCol.column_id)WHERE  oSub.name  =  '子表名'  AND  SubCol.name  =  '子表列名'

3.增加列

 ALTER TABLE HY会员档案  ADD 简码 varchar(20) ,初始欠款 decimal(18,2),初始订金 decimal(18,2),初始积分 decimal(18,2),公司 nvarchar(50)

4.修改字段类型

alter table XM项目 alter column 简码 varchar(20)
5.刷新视图,仅当视图所引用的表的字段类型变更后
exec sp_refreshview 'View_KX卡项' --更改表结构类型后必须刷新视图
6.查询字符是否包含在字段列的数据中

--"跟踪顾问"的在数据库表中存储的形式为:'高春玲','陈丽如','骆辅娟'select * from [HY会员档案]  where  Charindex('高春玲',跟踪顾问,0)>0

整数类型

IF(EXISTS(SELECT TOP 1 ID FROM MACHINE WHERE Charindex(CONVERT(varchar,INITMACHINETYPEID),@Ids,0)>0))SELECT 1
注意:
例如:@Ids='5,69,8';

7.连接日期和时间

select CONVERT(char(10),getdate(),120)+' '+ CONVERT(varchar(12) , getdate(), 114 )




0 0
原创粉丝点击