首页 > 代码库 > sql总结
sql总结
--------------------------------------------------------------------Select--------------------------------------------------------------------------------------------------------------------
1、查询表中所有的数据
-----------select * from 表名
-----------select all id,name from 表名
-----------select id,name from 表名
2、查询表中完全匹配的数据
-----------select * from 表A,表B where 表A.id=表B.id
---------- select * from 表A inner join 表B on 表A.id=表B.id
3、数据过滤【完全过滤/字段过滤】
----------- select distinct * from 表A
-----------select distinct(字段) from 表A
4、数据统计
-----------select count(*) from 表A
-----------select count(1) from 表A
-----------select count(字段) from 表A
-----------select count(distinct 字段) from 表A
5、查询前N条数据
-----------select top n * from 表A
-----------select top (n) * from c order by id desc
6、查询中的in和not in 与exists和 not exists
----------select * from 表A where not exists (select * from 表B where id = 表A.id )
----------select * from 表A where exists (select * from 表B where id = 表A.id )
---------select * from 表A where id in (select id from 表B)
---------select * from 表A where id not in (select id from 表B)
7、数据库中and与or的用法
--------select * from 表A where 字段A=‘‘ and 字段B=‘‘
--------select * from 表A where 字段A=‘‘ or 字段B=‘‘
8、union和union all进行并集运算
--------select id, name from 表A where 字段 like ‘%‘ union select id, 字段 from 表A where id = 4 ---------------------并集不重复
--------select * from 表A where name like ‘%‘ union all select * from 表A---------------------并集重复
---------select * from 表A where 字段 like ‘%‘ intersect select * from 表A--------------------------交集(相同部分)
----------select * from 表A where 字段 like ‘%‘ except select * from 表A where 字段 like ‘%‘ -------------除去(相同部分)
9、聚合函数
---------select max(字段) 表A
---------select min(字段) 表A
---------select count(字段) 表A
---------select avg(字段) 表A
---------select sum(字段) 表A
---------select var(字段) 表A
10、日期函数
-------select dateAdd(day, 3, getDate())
-------select dateAdd(year, 3, getDate())
-------select dateAdd(hour, 3, getDate())
---------------------计算返回数据----------------
----------select dateDiff(day, ‘2016-01-01‘, getDate())
----------select dateDiff(second, ‘2016-01-01 00:00:00‘, getDate())
----------select dateDiff(hour, ‘2016-01-01 00:00:00‘, getDate())
----------select dateName(month, getDate())
----------select dateName(minute, getDate())
----------select dateName(weekday, getDate())
---------select datePart(month, getDate())
---------select datePart(weekday, getDate())
---------select datePart(second, getDate())
---------select day(getDate())
---------select day(‘2016-01-01‘)
--------select month(getDate())
--------select month(‘2016-01-01‘)
--------select year(getDate())
--------select year(‘2016-01-01‘)
--------select getDate()
--------select getUTCDate()
11、数学函数
-------select pi()
-------select rand(100), rand(50), rand(), rand()
-------select round(rand(), 3), round(rand(100), 5)
-------select round(123.456, 2), round(254.124, -2)
-------select round(123.4567, 1, 2)
12、字符串
------select len(字符串)
------select reverse(字符串)
------select left(字符串, 4)
------select right(字符串, 4)
------select lower(‘abc‘), lower(‘ABC‘)
------select upper(‘ABc‘), upper(‘abc‘)
13、创建数据库
-------create database 库名称
14、删除数据库
------drop database 数据库名称
15、备份sql
-----use master exes sp_addumpdevice ‘数据库‘ ,‘备份名称‘,‘备份地址‘
16、开始备份
----- backup database pubs to ‘备份名称‘
17、创建表
------create table 表名称
18、删除表
------drop table 表名称
19、增加列
------alter table 表名称 add column col 列名称
20、创建视图
-------create view 视图名称
21、删除视图
-----drop view 视图名称
22、复制表数据
-------select * into 表B from 表A
------select top 0 into 表B from 表A
23、between的用法
------select * from 表A where time between time1 and time2
-----select * from 表A where id between id1 and id2
转自:http://www.cnblogs.com/lqLove/p/5803717.html
sql总结