Sql常用语句汇总.doc_第1页
Sql常用语句汇总.doc_第2页
Sql常用语句汇总.doc_第3页
Sql常用语句汇总.doc_第4页
Sql常用语句汇总.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Sql常用语句汇总 /基本语句SqlServer 查询Access语句 SELECT * FROM OPENROWSET(Microsoft.Jet.OLEDB.4.0, c:youfile.mdb;admin;youpwd,youtabname) AS a 新建表:create table 表名 (字段一,类型,是否为空,) 例: create table mytry( name char(5) not null, code smallint identity(1000,1) /将code设为自动递增的数据,从1000依次递增1新增:insert into 表名 (字段一,字段二,) values (aa,bb,) where ;更新:update 表名 set 字段一=aa,字段二=bb where 删除:delete from 表名 where 查找:select 字段一(as),字段二, from 表名 where 新加字段 access:alter table tableName addalter column columnName columnType sqlserver:alter table tableName addalter columnName columnType通配符 like: 反向:037001002 like % + unitId + % /反向查找添加通配符后等于指定符的记录 正向:unitId like %037001002% /正向查找包括指定符的记录 %:任意匹配 _:匹配一个字符,一个汉字等于两个字符:_ WHERE au_fname LIKE _ean 将查找以 ean 结尾的所有 4 个字母的名字(Dean、Sean 等)。 注:access中以?代替 :通配符:WHERE au_lname LIKE C-Parsen 将查找以arsen 结尾且以介于 C 与 P 之间的任何单个字符开始的作者姓氏,例如,Carsen、Larsen、Karsen 等。 :非:WHERE au_lname LIKE del% 将查找以 de 开始且其后的字母不为 l 的所有作者的姓氏。 escape:逃逸字符 如 like 张#%三 escape # ,为查找 张%某某的人 select a.* from a,()b where a.id like b.id+%条件成熟后操作:SELECT (CASE WHEN EXISTS (SELECT * FROM view_name WHERE user_id = 1) THEN user_id END),user_name /user_id为选择字段 FROM view_name按组查询:(当有统计函数,普通字段) SELECT codeid, SUM(codelevel) AS 水平 FROM wdc_ts_code GROUP BY codeid 创建视图: create view myview as (select )最右/最左一位 right(字段,位数) = 匹配字符串/left(字段,位数) = 匹配字符串空字段 字段 is null建表及主键 CREATE TABLE dbo.uploadFiles1 ( id int IDENTITY (1, 1) NOT NULL, PRIMARY KEY (id,) ) ON PRIMARY 或 CREATE TABLE dbo.uploadFiles1 ( id int IDENTITY (1, 1) NOT NULL primary key ) ON PRIMARY 批量更新,多表链接 UPDATE A004A001 SET status = 1000000000 FROM A004A001 INNER JOIN (SELECT MAX(id) AS id, A0100 FROM A004A001 GROUP BY A0100) AS b ON A004A001.A0100 = b.A0100 AND A004A001.ID = b.ID UPDATE SR_BuiltItem INNER JOIN SR_SourceItem ON (SR_BuiltItem.FieldName = SR_SourceItem.FieldName) AND (SR_BuiltItem.SetId = SR_SourceItem.SetId) SET SR_BuiltItem.Description = SR_SourceItem.Description;参数声明 strSql=declare MaxId int;Select MaxId=+ drCx_MainID.ToString() +; (strSql=declare MaxId int;select MaxId=(Select IsNull(Max(Cx_MainID),0)+1 From SR_CxMain);) strSql+=Delete From SR_CxMain Where Cx_MainID=MaxId; /精妙语句1、复制表(创建): select * into b from a where id12、复制表(新增): insert into b(a, b, c) select d,e,f from g;3、显示多表信息(不关联):显示文章、提交人和最后回复时间 select a.title,a.username,b.adddate from table a, (select max(adddate) adddate from table where table.title=a.title) b4、显示多表信息(关联): select a.id, from a,b where a.id = b.cid -select name,sex,(select b.age from b where =) as age from a5、清理多表信息(关联):删除主表中已经在副表中没有的信息 delete from info where not exists (select * from infobz where info.infid=infobz.infid)6、得到表中最小的未使用的ID号 SELECT (CASE WHEN EXISTS(SELECT * FROM Handle b WHERE b.HandleID = 1) THEN MIN(HandleID) + 1 ELSE 1 END) as HandleID FROM Handle WHERE NOT HandleID IN (SELECT a.HandleID - 1 FROM Handle a) -SELECT personId, CASE WHEN serviceId IS NULL THEN 0000 ELSE serviceId END FROM pub_userLogin7、一个表中的数据是否在另一集合中 (子查询) select aa,bb from aaa where aa in (select cc from bbb) -查询的是集合 select aa,bb from aaa where aa = (select cc from bbb) -查询的是一条记录8、where select * from aaa where (select count(*) from bbb) = (select * from ccc)9、降序:order by aaa desc10、多表关联: 两表:select 表名1.字段 from 表名1 inner join 表名2 on 表名1.字段 = 表名2.字段 或:select *,(select description from sr_department where code = (select top 1 code from web_tbl_login where userid =2) as description from web_tbl_login where userid = 211、两 表叠加: select SCOTT.web_tbl_login.LOGINID, SCOTT.web_tbl_login.REALNAME, SCOTT.wdc_ts_code.CODE, SCOTT.wdc_ts_code.DESCRIPTION, from SCOTT.web_tbl_login , SCOTT.wdc_ts_code where SCOTT.web_tbl_login.BUILDUNITID = SCOTT.wdc_ts_code.code and SCOTT.wdc_ts_code.codeid = NM union select SCOTT.web_tbl_login.LOGINID, SCOTT.web_tbl_login.REALNAME, 000 as code, SCOTT.web_tbl_login.BUILDUNITID, from SCOTT.web_tbl_login where SCOTT.web_tbl_login.STATION = 系统管理员12.反回不同的行 /有重复只显示一行 select distinct id,name from a;13.Inner Join 与 Left Join 与 Right Join区别 Inner Join:二者皆符合才显示 Left Join:以左为主,右边符合条件则显示,否则为空 Right Join:以右为主,14.提示不是有效的标识符 exec (StrSql)15. declare user varchar(1000) declare moTable varchar(20) select moTable = MT_10 declare sql nvarchar(4000) -定义变量,注意类型 set sql=select user = count(distinct userid) from +moTable -为变量赋值- -执行sql中的语句 exec sp_executesql sql ,Nuser varchar(1000) out -表示sql中的语句包含了一个输出参数 ,user out -和调用存储过程差不多,指定输出参数值print user/SQL函数1、数据类型:(创建table时的类型) 1、整数:int 2.浮点:float 3.二进制:binary 4.字符:char,varchar,nchar 5.文本、图形:text/ntext-image 6.日期:datetime 7.货币:money2、变量声明/赋值: 1.全局变量:declare x int; 2.局部变量:declare x int,mychar char(10); set/select x = 1 , mychar = 1233、运算符: = = not and or 4、常用函数: 1.平均: avg(字段名)-(as 新字段名) 2.列名: count(字段名)-(as 新字段名) 3.最大值: max(字段名)-(as 新字段名) 4.最少值: min(字段名)-(as 新字段名) 5.总和: sum(字段名)-(as 新字段名) 6.平均差: stdev(字段名)-(as 新字段名)5.系统函数: 1.列名:col_name(,) 2.列宽:col_length(,) 3.数据表编号:object_id() 3.数据表名称:object_name() 4.数据库编号:db_id() 5.数据库名称:db_name() 6.标识增量:ident_incr()-(as ) 7.标识初值:ident_seed()-6其它运算符: 1。语然嵌套(any/some) select * from aaa where codeid = any (select code from bbb ) 2。至少返回一行:not exists select * from aaa where exist(select * from bbb where ) 3。模糊查询:m not like n select * from aaa where name like 001% x%:匹配“x” %x%:匹配“x” %x:匹配“x” 4.任意一个:all select * from . where salary = all(2500,3000,4000) 5.界于两者之间:not between m and n select * from . where salary between 5000 and 60008日期差select datediff(yy,startDate2005-01-01,endDate2006-01-01) yyyy-年 m-月 d-日 q-季度 y-一年的日期 w-一周的日数 ww-周 h-小时 n-分种 s-秒/字符串1.ascii(字段) 返回最左端字符的ASCII码 select ascii(Age) as age from 2.char(字段) 将(0-255)之间的Ascii码转换为字符 select char(age) as age3.lower(字段) 将字段内容小写4.upper(字段) 将字段内容大写5.str(数字,字符串长度,小数位数)6.ltrim(字段) 字符串左部空格去掉7.rtrim(字段) 字符串右部空格去掉8.left(字段,长度) 取字段左边指定长度 select l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论