我遇到了一個mysql查詢的問題,我有一個包含訂單金額(表中的第一個int)和它的描述的表。不幸的是我不能改變數據庫結構。我需要在查詢中拆分它們,我有以下查詢;Mysql - 拆分表內容,訂單金額及其說明
Load table:
3 pallets 120 x 100 x 100
12 pallet 120 x 100 x 84
SELECT *,
IF (load * 1! = 0, LEFT (load, 1), '1 ') AS cargo_quantity,
IF (load * 1! = 0, SUBSTR (load, 2), load) AS cargo_description
FROM transport
查詢在金額低於10時起作用,當數字爲10或更高時,查詢將失效。我真的可以用一些幫助來解決這個問題,有什麼建議嗎?
所以,你有一個包含多個數據塊的領域,並且您希望數據庫引擎爲您打破這些碎片......這些碎片如何一開始就融合在一起?我懷疑不是在數據庫引擎中,但可能在你的應用程序代碼中?那麼爲什麼不在你的應用程序代碼中拆分呢?如果你真的希望數據庫爲你做這件事,這表明這些作品真的應該存儲在單獨的列中 - 這就提出了*爲什麼*你不能改變數據庫結構*的問題? – eggyal 2013-04-26 08:50:54
look [this](http://stackoverflow.com/questions/2696884/mysql-split-value-from-one-field-to-two)。在你的情況下,這可能可以工作:SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(load,'',1),'',-1)as cargo_quantity, SUBSTRING_INDEX(SUBSTRING_INDEX(load,'',2),'',-1)as cargo_description FROM運輸; – 2013-04-26 09:01:03
請給出更大範圍的示例行。特別是那些「非常規」格式 – luksch 2013-04-26 10:00:58