2015-02-10 133 views
0
Select Count(*),* from TourBooking Where MemberID = 6 

給了一個錯誤如何獲得與*

「列TourBooking.ID'計,因爲它不是在聚合函數或GROUP BY子句包含在選擇列表中無效。 「

+0

SELECT COUNT(*)凡MEMBERID = 6個 – 2015-02-10 09:31:44

+0

@HelpingHands我也想從表中的所有數據不能只算 – Mike 2015-02-10 09:32:22

+0

@mike - 啊,好吧.. – 2015-02-10 09:35:11

回答

2

count()是一個聚合函數,因此需要group by 。如果要算在你的結果行的總數量,你可以使用一個窗口函數來添加這樣的列:如果你想在總數中的表

select count(*) over() as total_count, 
     TourBooking.* 
from TourBooking 
where MemberID = 6; 

TourBooking無論這個值的MemberId你需要爲了一個標量子查詢,以獲得數:從TourBooking

Select (select Count(*) from TourBooking) as total_count, 
     TourBooking.* 
from TourBooking 
where MemberID = 6 
2

您需要使用子查詢:

Select (select Count(*) from TourBooking Where MemberID = 6), * 
    from TourBooking 
Where MemberID = 6 
-2

請從

Select Count(*),* from TourBooking Where MemberID = 6 

改變你的代碼

Select Count(*) from TourBooking Where MemberID = 6 
+0

不要使用sql代碼片段,只需在開始時使用4個空格或使用代碼示例按鈕'{}' – Tanner 2015-02-10 09:38:26