2012-08-24 78 views
0

想知道將BIGINT列值與'1'進行比較會出現什麼問題。沒錯,這是爲什麼不產生任何結果:Mysql 5.0.91 BIGINT列值與'1'的比較

SELECT * FROM table WHERE col = '1'

而這只是罰款(即返回非空的結果)。

SELECT * FROM table WHERE col = 1

感謝

+0

「col」的數據類型是什麼? – hims056

+0

它是BIGINT(20) – hummingBird

回答

2

如果你是比較一個整數,你不需要周圍的引號。

這似乎可能是一個未解決的錯誤。

MySQL Bugs

+0

它是一個很大的int,我用它來保持一致性......不幸的是,它不起作用:) – hummingBird

+0

同樣的反應,當使用任何整數時,bigint,你不需要引號圍繞值 – Taryn

+1

你不需要**引號,但如果你使用它們,它應該仍然工作 – Peter

1

你不需要與IntBigInt比較使用引號。

但我得到的結果,即使我比較引號。

See this fiddle

+0

非常感謝這:),但它可能是一個不同的服務器版本。儘管愛小提琴;) – hummingBird