2017-07-17 51 views
0

在數據庫中,我有這樣的表:獲取SQL中的總多列的

| id hotel_id | room_id | Ac_rooms | Non_ac_rooms | simple_rooms | Furnitured_room | other_rooms | added_by | 
| 9   |  2 |  3 |  2  |  6  |  12  |  21  |  raj | 

我想要得到的房間從SQL查詢總數(這是總ROOM_ID的,Ac_rooms,Non_ac_rooms,simple_rooms ,Furnitured_room,other_rooms)。

從SQL查詢中獲得總數的最佳方法是什麼?我需要總行數。

+0

'選擇Ac_rooms + Non_ac_rooms + simple_rooms + Furnitured_room + other_rooms as TotalRooms' –

+0

請嘗試:select(ac_rooms + Non_ac_rooms + simple_rooms + Furnitured_room + other_rooms)作爲table_name中的總數order by hotel_id –

+0

我需要一個函數返回計數總數(Ac_rooms | Non_ac_rooms | simple_rooms | Furnitured_room |其他房間),結果爲10。 – Arushi

回答

1

試試這個:

SELECT 
SUM(Ac_rooms) as Ac_rooms, 
SUM(Non_ac_rooms) as Non_ac_rooms, 
SUM(Simple_rooms) as Simple_rooms, 
SUM(Furnitured_rooms) as Furnitured_room, 
SUM(Other_rooms) as Other_rooms, 
SUM(Ac_rooms+Non_ac_rooms+Simple_rooms+Furnitured_room+Other_rooms) as Total_rooms, 
FROM tbl_rooms 

或者

SELECT 
SUM(SUM(Ac_rooms)+SUM(Non_ac_rooms)+SUM(Simple_rooms)+SUM(Furnitured_room)+SUM(Other_rooms)) as Total_rooms, 
FROM tbl_rooms 
+2

thanx asif ..... – Arushi

1

如果我理解正確的,你只需要合計

select (ac_rooms + Non_ac_rooms + simple_rooms + Furnitured_room + other_rooms) as total_rooms from YOUR_TABLE 

而且您指定找到行的總數量,這可以通過使用非標準count功能

select count(*) as number_of_rows from YOUR_TABLE 

得到或可能是你正在尋找通過所有行的房間類型的總和?在這種情況下,你將需要

select sum(ac_rooms), sum(Non_ac_rooms), sum(simple_rooms), sum(Furnitured_room), sum(other_rooms) from YOUR_TABLE 

UPD:如果我有你的權利,你需要這個

select sum(ac_rooms) as ac_rooms_total, 
     sum(Non_ac_rooms) as non_ac_rooms_total, 
     sum(simple_rooms) as simple_rooms_total, 
     sum(Furnitured_room) as furnitured_room_total, 
     sum(other_rooms) as other_rooms_total, 
     sum(ac_rooms + Non_ac_rooms + simple_rooms + Furnitured_room + other_rooms) as TOTAL 
from YOUR_TABLE 
+0

@Arushi你能否詳細說明你到底需要什麼? – Hatik

+0

我需要一個函數,返回總數爲10的結果(Ac_rooms | Non_ac_rooms | simple_rooms | Fur​​nitured_room | other_rooms)。 – Arushi

+0

@Arushi我已經更新了答案是你需要什麼? – Hatik