我試圖構建一個查詢,該查詢將選擇出租屬性的所有租戶。每個屬性可以有多個租戶,每個租戶可以移動到不同的屬性。只有ID匹配時才返回最大加入結果
這裏的用戶屬性表的外觀(部分),如:
User ID | Property ID | Move In Date | Move Out Date
----------------------------------------------------------
224 | 33A | 2015-11-01 | NULL
224 | 36B | 2015-11-15 | NULL
226 | 33A | 2015-11-01 | NULL
在上面的例子中User 224
搬進財產33A
1日,然後於15日物業36B
。對於這個問題,例如,我假設move_out_date
列沒有正確填充日期。在這種情況下,我需要一個能繞過這個問題的查詢。
這裏就是我有我的查詢到目前爲止:
SELECT
u.user_email, p.user_fname, p.user_lname, r.move_in_date AS occupant_date
FROM
user u
LEFT JOIN
user_profile p ON p.user_id = u.user_id
LEFT JOIN
(
SELECT
user_id, property_id, move_in_date
FROM
user_property
WHERE
move_out_date IS NULL
ORDER BY
move_in_date DESC
) r ON r.user_id = u.user_id
WHERE
r.property_id = '33A'
GROUP BY
u.user_id
ORDER BY
r.move_in_date ASC, p.user_fname ASC
該查詢返回每個乘客信息,並在移動日期。對於屬性33A
它返回用戶224
和226
,但我只想返回用戶226
,因爲技術上用戶224
已從該屬性移出。
目前輸出表看起來像這樣:
User ID | Property ID | Move In Date | Move Out Date
----------------------------------------------------------
224 | 33A | 2015-11-01 | NULL
226 | 33A | 2015-11-01 | NULL
User ID | Email | First Name | Last Name | Occupant Date
---------------------------------------------------------------------
224 | [email protected] | Kevin | Doe | 2015-11-01
226 | [email protected] | Tom | Smith | 2015-11-01
但我只希望結果對用戶226
專門爲物業ID 33A
。最後,這...
User ID | Email | First Name | Last Name | Occupant Date
---------------------------------------------------------------------
226 | [email protected] | Tom | Smith | 2015-11-01
這是可能做一個查詢,或者我需要做幾個?我很感激這方面的幫助!獲取當前租戶給定屬性
表示您需要--->'226 | 33A | 2015-11-01 | NULL'?只有 –
如果共享輸出表,它會很好。 –
你的表中是否有任何ID列(自動遞增)? –