這聽起來很奇怪......但我需要一種方法來找出存儲爲整數的特定列中的所有條目。查找Mysql數據庫的varchar列中的所有整數
顯然,在過去有人從整數轉換這一欄沒有MySQL的嚴格模式爲varchar開啓,而這顯然導致被留下作爲整數那幾個條目:
作品:
SELECT * FROM inv_array where serial = 18787
不起作用:
SELECT * FROM inv_array where serial = '187870123'
串行列被配置爲一個varchar,所以上面應該已經工作了,沒有?不應該MySQL將這些整數作爲varchar轉換嗎?我瘋了嗎?
我需要找到這個數據庫中的所有條目,其中串行存儲爲整數並將其轉換爲varchar。
一列不能有混合類型。他們都是整數,或者他們都是變種。你不能在那裏混雜兩種。 – 2013-02-08 21:12:08
@Chris在zerofill的情況下(例如列被設置爲'serial int(20)zerofill')是問題所在,例如你可以在一個select查詢中移除它們。 '選擇修剪(前導0 FORM串行)從inv_array WHERE序列= 187870124'。 – 2013-02-08 22:33:50