嗨,我在MYSQL中的一點點代碼掙扎。我試圖讓代碼正常工作。答案是正確的,但它顯示的是完全錯誤的列。任何建議或方向都會很棒。我看過類似的帖子,但這些似乎是插入數據庫。這是爲了從mysql內部顯示。MYSQL代碼正在創建顯示重複行
我的代碼---
SELECT
b.booking_id AS Booking,
b.hotel_no AS Hotel,
b.dateFrom AS Arrive,
b.dateTo AS Departing,
r.price AS Cost,
DATEDIFF(`dateTo`,`dateFrom`)-1 AS Duration,
DATEDIFF(`dateTo`,`dateFrom`) * r.price - r.price AS 'Total Cost'
FROM BOOKING AS b
LEFT JOIN
ROOM AS r ON b.hotel_no = r.hotel_code
WHERE b.hotel_no = 2;
Database 'Booking'
booking_id guest_no dateFrom dateTo room_no hotel_no
1 1 2014-06-30 2014-07-03 1 1
2 2 2014-06-30 2014-07-07 1 2
3 3 2014-06-30 2014-07-02 2 2
Database 'Room'
room_id room hotel_no type price
1 1 1 Twin Share 185
2 2 1 Deluxe 330
3 1 2 Deluxe 250
4 2 2 Penthouse Suite 500
Answer from Mysql.
Booking Hotel Arrive Departing Cost Duration Total Cost
2 2 2014-06-30 2014-07-07 250 6 1500
3 2 2014-06-30 2014-07-02 250 1 250
2 2 2014-06-30 2014-07-07 500 6 3000
3 2 2014-06-30 2014-07-02 500 1 500
正如你可以看到我有是它在總成本等方面產生正確的結果,但它被複制到達的問題 - 出發部分。有什麼建議可以幫助解決這個問題?
謝謝
格雷格