0
等於我有這樣的MySQL查詢LEFT JOIN返回結果爲未接通
SELECT bm_events.name AS event_name,
bm_events.uid AS event_uid,
bm_events.organising,
bm_organising_company.uid,
bm_organising_company.name
FROM bm_events LEFT JOIN bm_organising_company
ON bm_events.organising = bm_organising_company.uid
這裏是結果
Acontraluz 68 66,90 66 Advanced Music S.L.
列 「bm_events.organising」 是用逗號分隔值的VARCHAR。
因此,對於bm_events表中的「bm_events.organising」等於「66,90」,我期望對bm_organising_company.uid和bm_organising_company.name沒有結果。
你能向我解釋爲什麼我得到了bm_organising_company.uid = 66的結果嗎?
謝謝:)
當您將一個字符串與MySQL中的一個int進行比較時,該字符串將轉換爲一個int值,然後進行比較。 「66,90」變成66作爲整數。 – Vatev
如果您想比較VARCHAR,則需要使用'like'關鍵字而不是'='。 –
如此明顯。我認爲這是一個嚴格的比較。再次感謝。 – metameta