仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1252|回复: 8
打印 上一主题 下一主题

[学习教程] MSSQL网页编程之SQL循规蹈矩(21)更多的子查询

[复制链接]
深爱那片海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:20:58 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Archive非常适合存储大量的独立的,作为历史记录的数据。因为它们不经常被读取。Archive拥有高效的插入速度,但其对查询的支持相对较差更多的子查询
我们可使用在SELECT查询语句中再包含一个SELECT子查询语句。举个例子吧,起首我们列除一切购置宝贵物品的主顾,宝贵物品的尺度是比一切卖出的物品代价的均匀值多100元的物品。详细语句以下:
SELECTOWNERID
FROMANTIQUES
WHEREPRICE>
(SELECTAVG(PRICE)+100
FROMANTIQUES);
下面子查询语句是盘算物品的均匀代价再加100元,并搜刮一切在ANTIQUES表中PRICE年夜于这个数值的OWNERID。这里你可使用DISTINCTOWNERID来扫除复制的征象。
上面的语句列出了一切在AntiqueOwners表中的有买过物品的人的LastName:
SELECTOWNERLASTNAME
FROMANTIQUEOWNERS
WHEREOWNERID=

(SELECTDISTINCTBUYERID
FROMANTIQUES);
这个子查询前往了一系列的主顾,当且仅当物品具有者的ID呈现在子查询的列表中,古玩的具有者的LastName才会显现出来。
为了更新这个例子,我们假定有一个买过bookcase的主顾,他的FirstName在数据库中堕落了,应当为John:
UPDATEANTIQUEOWNERS
SETOWNERFIRSTNAME=John
WHEREOWNERID=

(SELECTBUYERID
FROMANTIQUES
WHEREITEM=Bookcase);
下面的语句中的子查询起首搜刮买过bookcase的主顾的BuyerID,然后在外层的查询中来更新他的FirstName。
我们分析上面的两个操作,都有一个“删除数据”的过程。
兰色精灵 该用户已被删除
9#
发表于 2015-3-26 13:41:09 | 只看该作者
另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程);
活着的死人 该用户已被删除
8#
发表于 2015-3-18 17:39:40 | 只看该作者
原来公司用过MYSQL自己也只是建个表写个SQL
山那边是海 该用户已被删除
7#
发表于 2015-3-11 12:28:10 | 只看该作者
原理很简单,对要求长时间计算某一时间点的报表生成和防用户操作错误很有帮助。但是比起Oracle10g的闪回技术还是细粒度不够。可惜!
飘飘悠悠 该用户已被删除
6#
发表于 2015-3-3 16:54:51 | 只看该作者
一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。
小魔女 该用户已被删除
5#
发表于 2015-2-13 06:14:58 | 只看该作者
你可以简单地认为适合的就是好,不适合就是不好。
admin 该用户已被删除
地板
发表于 2015-2-5 18:37:07 | 只看该作者
语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的!
小女巫 该用户已被删除
板凳
发表于 2015-1-28 05:59:32 | 只看该作者
很多书籍啊,不过个人认为看书太慢,还不如自己学。多做实际的东西,就会遇到很多问题,网上搜下解决问题。不断重复这个过程,在配合sql的F1功能。
柔情似水 该用户已被删除
沙发
发表于 2015-1-19 09:08:36 来自手机 | 只看该作者
如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 23:13

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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