3
我創建了一個(復)子查詢,我把結果在一個變量類似數值:分流/ mysql的爆炸字符串中
@mylist := (select ....)
返回的值是一個逗號delimeted串..因爲在子查詢中我也使用了concat(),所以這個值是一個字符串。
在同一個SQL我想在像另一個子查詢中使用這個變量:
where table.mycolumn IN (@mylist)
的問題是,由於@mylist是一個字符串Mysql的讀取查詢爲:
where table.mycolumn IN('575030,655156,655157')
而我希望它被執行爲
where table.mycolumn IN(575030,655156,655157)
如何將字符串轉換爲(數字)ar射線?
PS:我使用的MySQL 5.1
無論@mylist中的分隔符是什麼,它都可以工作嗎? – MontyPython
不,根據文檔沒有參數來更改分隔符。雖然可以添加一個'FIND_IN_SET(id,REPLACE(@mylist,'my_separator',','))',但如果提取的值可以包含逗號,它將不起作用。 – Batsu
謝謝你解決了我的問題! :-) – user2022678