(16)关联子查询。(17)将子查询作为临时表。

(16)关联子查询。所谓关联子查询中,指可以在内部查询中使用外部查询的结果,如下
所示:
242 PHP 网络编程技术与实例

select items.item_id,name from items

where exists (select * from orders where orders.item_id=items.item_id);


以上查询了所有有被订购记录的书籍信息。这里使用了关键字EXISTS,如果查询还没
有订购记录的书籍信息,可以使用NOT EXIST(细心的读者会发现通过左关联 left join 也可以实现)。
在上面的查询中,子查询中使用了外部查询的表集items,这就是关联子查询。如果外部
查询中没有包含的表,则不能引用。
(17)将子查询作为临时表。有些时候,可以将子查询的结果作为一个临时的表放在FROM
后面来进行查询,如下所示:

select member_id from (select * from members where member_login='admin') as tempTable;


以上是将“select * from members where member_login='admin'”子查询作为一个临时表,
注意在使用临时表的时候,必须要为该子查询创建一个别名。
SELECT 也可以被用于检索没有引用任何表的计算列。如下所示:

select 10+10; # from dual;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值