mysql使用帶聚集函數(shù)的聯(lián)結(jié)
發(fā)表時(shí)間:2023-08-31 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]聚集函數(shù)用來(lái)匯總數(shù)據(jù)。雖然至今為止聚集函數(shù)的所有例子只是從單個(gè)表匯總數(shù)據(jù),但這些函數(shù)也可以與聯(lián)結(jié)一起使用。為說(shuō)明這一點(diǎn),請(qǐng)看一個(gè)例子。如果要檢索所有客戶及每個(gè)客戶所下的訂單數(shù),下面使用了 COUNT() 函數(shù)的代碼可完成此工作:輸入:select customers.cust_name,custo...
聚集函數(shù)用來(lái)匯總數(shù)據(jù)。雖然至今為止聚集函數(shù)的所有例子只是從單個(gè)表匯總數(shù)據(jù),但這些函數(shù)也可以與聯(lián)結(jié)一起使用。為說(shuō)明這一點(diǎn),請(qǐng)看一個(gè)例子。如果要檢索所有客戶及每個(gè)客戶所下的訂單數(shù),下面使用了 COUNT() 函數(shù)的代碼可完成此工作:輸入:
select customers.cust_name,customers.cust_id,count(order_num) as num_ord from customers inner join orders on customers.cust_id = orders.cust_id group by custo,=mers.cust_id;
輸出:

分析:此 SELECT 語(yǔ)句使用 INNER JOIN 將 customers 和 orders 表互相關(guān)聯(lián)。GROUP BY 子句按客戶分組數(shù)據(jù),因此,函數(shù)調(diào)用 COUNT(orders.order_num) 對(duì)每個(gè)客戶的訂單計(jì)數(shù),將它作為 num_ord 返回。
聚集函數(shù)也可以方便地與其他聯(lián)結(jié)一起使用。請(qǐng)看下面的例子:
輸入:
select customers.cust_name,customers.cust_id,count(order_num) as num_ord from customers left outer join orders on customers.cust_id = orders.cust_id group by custo,=mers.cust_id;
輸出:


分析:這個(gè)例子使用左外部聯(lián)結(jié)來(lái)包含所有客戶,甚至包含那些沒(méi)有任何下訂單的客戶。結(jié)果顯示也包含了客戶 Mouse House ,它有 0 個(gè)訂單。
以上就是mysql使用帶聚集函數(shù)的聯(lián)結(jié)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。