1
我有以下查詢:MySQL的右連接,其中一個上子句返回空
SELECT * FROM my_users as U
RIGHT JOIN subscribers AS S ON S.userid = U.user_id
WHERE S.approved > 0 AND S.channel_id = 1 AND S.alert_level >= 90
如果我脫下最後AND子句(AND S.alert_level> = 90)搜索工程完全按照預期。留下最後一個AND子句,我得到一個空的結果集。
顯然,我檢查了訂戶表,以確保返回的用戶標識具有正確的alert_level,並且它們都具有90個,因此應該返回2個用戶...而S.alert_level是smallint(6)。
我在這裏錯過了一些明顯的東西嗎?
謝謝!
這聽起來很奇怪。你說你「檢查了訂戶表,以確保將被返回的用戶標識符有正確的alert_level」,但爲什麼你需要這樣做呢?當您嘗試「取消最後一個AND子句(AND S.alert_level> = 90)時,您應該已經能夠看到alert_level了,搜索完全按照預期工作。」你不覺得要檢查嗎?你現在可以檢查它嗎? –
砰!是的......它只需要另一雙眼睛! – ppetree
如果您想編輯和/或接受它,我會轉貼作爲回答。 –