2016-08-30 51 views
1

我使用連接函數從兩個表'逗留'和'寵物'表中引入數據。我想知道如何計算返回數據中發生的次數'貓'。使用mysql中的連接函數計算特定數據的次數

SELECT pet.petID, pet.species 
from stay 
inner join pet 
on (stay.petID = pet.petID) 



petID Species 
    8 Cat 
    8 Cat 
    8 Cat 
    9 Cat 
    11 Cat 
    12 Cat 
    12 Cat 
    14 Cat 
    39 Dog 
    39 Dog 
    40 Dog 
    41 Dog 
+0

如果加上'WHERE品種=「cat''到您的查詢的末尾,則答案將與返回的行數相同。 – Strawberry

+0

查看MySQL的count()函數 – Shadow

回答

1

這個查詢應該做的伎倆:

SELECT COUNT(*) 
FROM stay 
INNER JOIN pet 
    ON stay.petID = pet.petID 
WHERE pet.species = 'Cat' 

但會是什麼更有趣的(​​也可能是更有用的)會是一個結果集,它顯示了所有動物種類數,在你的情況下你可以試試這個:

SELECT pet.species, 
     COUNT(*) AS petCount 
FROM stay 
INNER JOIN pet 
    ON stay.petID = pet.petID 
GROUP BY pet.species 
0

SELECT pet.petID,計數(pet.species)作爲no_of_species,從住宿 內pet.species 加入寵物 上(stay.petID = pet.petID) 組由pet.species

0

只加入WHERE species = 'cat'

SELECT COUNT(*) 
from stay 
inner join pet 
    on (stay.petID = pet.petID) 
where pet.species = 'Cat' 
相關問題