设为首页 收藏本站
查看: 1422|回复: 0

[经验分享] 经典SQL语句(转)

[复制链接]
发表于 2016-11-11 11:07:57 | 显示全部楼层 |阅读模式
1、说明:复制表(只复制结构,源表名:a  新表名:b)  (Access可用)
法一:select  *  into  b  from  a  where  1 <> 1
法二:select  top  0  *  into  b  from  a

2、说明:拷贝表(拷贝数据,源表名:a  目标表名:b)  (Access可用)
insert  into  b(a,  b,  c)  select  d,e,f  from  b;

3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径)  (Access可用)
insert  into  b(a,  b,  c)  select  d,e,f  from  b  in  ‘具体数据库’  where  条件
例子:..from  b  in  ' "&Server.MapPath( ". ")& "/data.mdb "  & " '  where..

4、说明:子查询(表名1:a  表名2:b)
select  a,b,c  from  a  where  a  IN  (select  d  from  b  )  或者:  select  a,b,c  from  a  where  a  IN  (1,2,3)

5、说明:显示文章、提交人和最后回复时间
select  a.title,a.username,b.adddate  from  table  a,(select  max(adddate)  adddate  from  table  where  table.title=a.title)  b

6、说明:外连接查询(表名1:a  表名2:b)
select  a.a,  a.b,  a.c,  b.c,  b.d,  b.f  from  a  LEFT  OUT  JOIN  b  ON  a.a  =  b.c

7、说明:在线视图查询(表名1:a  )
select  *  from  (SELECT  a,b,c  FROM  a)  T  where  t.a  >  1;

8、说明:between的用法,between限制查询数据范围时包括了边界值,not  between不包括
select  *  from  table1  where  time  between  time1  and  time2
select  a,b,c,  from  table1  where  a  not  between  数值1  and  数值2

9、说明:in  的使用方法
select  *  from  table1  where  a  [not]  in  (‘值1’,’值2’,’值4’,’值6’)

10、说明:两张关联表,删除主表中已经在副表中没有的信息  
delete  from  table1  where  not  exists  (  select  *  from  table2  where  table1.field1=table2.field1  )

11、说明:四表联查问题:
select  *  from  a  left  inner  join  b  on  a.a=b.b  right  inner  join  c  on  a.a=c.c  inner  join  d  on  a.a=d.d  where  .....

12、说明:日程安排提前五分钟提醒  
SQL:  select  *  from  日程安排  where  datediff( 'minute ',f开始时间,getdate())> 5

13、说明:一条sql  语句搞定数据库分页
select  top  10  b.*  from  (select  top  20  主键字段,排序字段  from  表名  order  by  排序字段  desc)  a,表名  b  where  b.主键字段  =  a.主键字段  order  by  a.排序字段

14、说明:前10条记录
select  top  10  *  form  table1  where  范围

15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)
select  a,b,c  from  tablename  ta  where  a=(select  max(a)  from  tablename  tb  where  tb.b=ta.b)

16、说明:包括所有在  TableA  中但不在  TableB和TableC  中的行并消除所有重复行而派生出一个结果表
(select  a  from  tableA  )  except  (select  a  from  tableB)  except  (select  a  from  tableC)

17、说明:随机取出10条数据
select  top  10  *  from  tablename  order  by  newid()

18、说明:随机选择记录
select  newid()

19、说明:删除重复记录
Delete  from  tablename  where  id  not  in  (select  max(id)  from  tablename  group  by  col1,col2,...)

20、说明:列出数据库里所有的表名
select  name  from  sysobjects  where  type= 'U '  

21、说明:列出表里的所有的
select  name  from  syscolumns  where  id=object_id( 'TableName ')

22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select  中的case。
select  type,sum(case  vender  when  'A '  then  pcs  else  0  end),sum(case  vender  when  'C '  then  pcs  else  0  end),sum(case  vender  when  'B '  then  pcs  else  0  end)  FROM  tablename  group  by  type
显示结果:
type  vender  pcs
电脑  A  1
电脑  A  1
光盘  B  2
光盘  A  2
手机  B  3
手机  C  3

23、说明:初始化表table1
TRUNCATE  TABLE  table1

24、说明:选择从10到15的记录
select  top  5  *  from  (select  top  15  *  from  table  order  by  id  asc)  table_别名  order  by  id  desc

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-298874-1-1.html 上篇帖子: SQL存储过程实例 下篇帖子: sql正则表达式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表