SQL精华语句集锦:复制表结构、数据与复杂查询
需积分: 9 46 浏览量
更新于2024-09-14
收藏 27KB DOCX 举报
"这篇资料是关于SQL语言的经典实例集合,主要涵盖了复制表结构、拷贝数据、外连接查询、时间判断、删除冗余信息等多种实用操作。"
在SQL语言中,有多种常用的语句用于数据库操作。以下是这些经典SQL语句的详细说明:
1. 复制表结构:
```sql
select * into b from a where 1<>1
```
这条语句用于创建一个与原表`a`结构相同的空表`b`,但不复制任何数据。`where 1<>1`是一个永假条件,确保没有数据被插入。
2. 拷贝表数据:
```sql
insert into b(a, b, c) select d, e, f from b;
```
这个语句将表`b`的`d`, `e`, `f`列的数据插入到新表`b`的相应列`a`, `b`, `c`中,实现了数据的完全拷贝。
3. 显示文章、提交人和最后回复时间:
```sql
select a.title, a.username, b.adddate
from tablea, (select max(adddate) adddate from table where table.title = a.title) b
```
这个查询结合了子查询,显示了每个具有最大添加日期(即最后回复时间)的文章标题、作者和日期。
4. 外连接查询:
```sql
select a.a, a.b, a.c, b.c, b.d, b.f
from a LEFT OUTER JOIN b ON a.a = b.c
```
左外连接查询会返回所有左表(这里是`a`)的记录,即使在右表(这里是`b`)中没有匹配的记录。如果在右表中找到匹配,将返回对应的字段值。
5. 日程安排提前五分钟提醒:
```sql
select * from 日程安排
where datediff('minute', f开始时间, getdate()) > 5
```
查询当前时间距离开始时间超过5分钟的日程,`datediff`函数计算两个日期之间的差值。
6. 删除主表中已经在副表中没有的信息:
```sql
delete from info
where not exists (select * from info_bz where info.info_id = info_bz.info_id)
```
使用`not exists`子查询来删除主表`info`中那些在副表`info_bz`中不存在对应信息的记录。
7. 复杂查询示例:
```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, 'YYYY/MM') = TO_CHAR(SYSDATE, 'YYYY/MM')) X,
(SELECT NUM, UPD_DATE, STOCK_ONHAND
FROM TABLE2
WHERE TO_CHAR(UPD_DATE, 'YYYY/MM') =
TO_CHAR(TO_DATE(TO_CHAR(SYSDATE, 'YYYY/MM') || '/01', 'YYYY/MM/DD') - 1, 'YYYY/MM')) 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经典语句的一些实例,涵盖了基础操作到更复杂的查询技巧,对于学习和理解SQL语言的操作非常有帮助。在实际工作中,掌握这些技巧能够有效地处理数据和执行复杂的数据库操作。
2013-02-02 上传
2023-07-28 上传
2023-06-08 上传
2023-04-25 上传
2023-05-12 上传
2023-05-31 上传
2023-04-25 上传
ZJZAYZ
- 粉丝: 0
- 资源: 2
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全