Heim > Datenbank > MySQL-Tutorial > 分析一下聚合函数与连接表的组合使用_MySQL

分析一下聚合函数与连接表的组合使用_MySQL

WBOY
Freigeben: 2016-06-01 13:35:22
Original
1687 Leute haben es durchsucht

bitsCN.com

分析一下聚合函数与连接表的组合使用

 

看这样一个关系

Customers(cust_id,cust_name,cust_contact)

Orders(order_num,cust_id,order_date)

 

如果有这样的检索语句:

Sql代码  

select cust_name,cust_contact,(  

  

    select count(*) from Orders  

  

                    where Orders.cust_id=Customers.cust_id  

  

                       group by cust_id)  

from Customers  

 

其运作步骤为:

1.从Orders表中检索出每个cust_id所具有的订单数量

可以那么做,因为孤立摆出count(*)是在group by 顾客编号基础上聚合的。

并且在聚合的之前,先进行连接表操作。把orders , Customers连接起来了。

这样内外只的就是同意顾客的信息.

 

2.外层列出其他需要的顾客信息。

注意点:

内层的通常用做单独孤立的聚合函数,

内层的分组操作前必须给出与外层的连接条件。

外层的select后面的选择列基本都是在外面的表里。

总结,这个句子究竟属于子查询呢还是普通的连接。

很明显。是子查询,以为是select 里面包含一个select 句子。

非常特殊,子句可以用作一个检索列!~就是这样。

以后碰到突然要分组但是又涉及两个不同的表,可以尝试这样的思路。

 

bitsCN.com
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage