2014-10-31 28 views
0

我想知道如何排除一個mysql組,我在這裏做了一段時間的研究,但沒有把它做對。如何排除Mysql組

我試圖

SELECT * FROM booking GROUP BY BookingId HAVING Status!="Cancellation" 

這顯然是行不通的。

示例數據庫看起來是這樣的:

+----+-----------+--------------+ 
| id | BookingId | Status  | 
+----+-----------+--------------+ 
| 1 |   1 | Booked  | 
| 2 |   1 | Cancellation | 
| 3 |   2 | Booked  | 
+----+-----------+--------------+ 

我想將它們分組由BookingId,如果發現條目之一得到了狀態取消該組不應該顯示出來,所以僅僅從ID上述3將可見。

回答

1

你需要一個having子句中

SELECT BookingId 
FROM booking 
GROUP BY BookingId 
HAVING sum(Status = 'Cancellation') = 0 
+0

非常感謝使用聚合功能,如sum Som1 2014-10-31 09:53:18