首页 > 数据库 > mysql教程 > 快速掌握一些异常精妙的SQL语句

快速掌握一些异常精妙的SQL语句

黄舟
发布: 2017-02-20 11:43:12
原创
1144 人浏览过

[导读]   精妙的"SQL"语句: ◆复制表(只复制结构,源表名:a 新表名:b) SQL: select * into b from a where 1<>1   ◆拷贝表(拷贝数据,源表名:a 目标表名:b) SQL: insert into b(a, b, c) se

  精妙的"SQL"语句:

◆复制表(只复制结构,源表名:a 新表名:b)

SQL: select * into b from a where 1<>1
登录后复制


◆拷贝表(拷贝数据,源表名:a 目标表名:b)

SQL: insert into b(a, b, c) select d,e,f from b;
登录后复制

◆显示文章、提交人和最后回复时间

SQL: select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b  
登录后复制

◆说明:外连接查询(表名1:a 表名2:b)

SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
登录后复制

◆日程安排提前五分钟提醒

SQL: select * from 日程安排 where datediff(&#39;minute&#39;,f开始时间,getdate())>5   
登录后复制

◆两张关联表,删除主表中已经在副表中没有的信息

SQL: delete from info where not exists ( select * from infobz where info.infid=infobz.infid )
登录后复制

说明:

SQL: SELECT A.NUM, A.NAME, B.UPD_DATE, B.PREV_UPD_DATE FROM TABLE1,(SELECT X.NUM, X.UPD_DATE, 
Y.UPD_DATE PREV_UPD_DATE FROM (SELECT NUM, UPD_DATE, INBOUND_QTY, STOCK_ONHAND FROM TABLE2 WHERE TO_CHAR(UPD_DATE,&#39;YYYY/MM&#39;) = TO_CHAR(SYSDATE, &#39;YYYY/MM&#39;))
 X, (SELECT NUM, UPD_DATE, STOCK_ONHAND FROM TABLE2 WHERE TO_CHAR(UPD_DATE,&#39;YYYY/MM&#39;) = TO_CHAR(TO_DATE(TO_CHAR(SYSDATE, &#39;YYYY/MM&#39;)
  &brvbar;&brvbar; &#39;/01&#39;,&#39;YYYY/MM/DD&#39;) - 1, &#39;YYYY/MM&#39;) ) Y, WHERE X.NUM = Y.NUM (+)AND X.INBOUND_QTY + NVL(Y.STOCK_ONHAND,0) 
  <> X.STOCK_ONHAND ) B WHERE A.NUM = B.NUM
      
登录后复制

说明:

SQL: select * from studentinfo where not exists(select * from student where studentinfo.id=student.id) 
and 系名称=&#39;"&strdepartmentname&"&#39; and 专业名称=&#39;"&strprofessionname&"&#39; order by 性别,生源地,高考总成绩
登录后复制

 以上就是 快速掌握一些异常精妙的SQL语句的内容,更多相关内容请关注PHP中文网(www.php.cn)!


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板