2012-05-17 70 views
0

我有一張表格,其數據如下所示。我想獲取包含在類別列'2'中的行?我如何設置查詢?我需要更新這一行。類別列具有「文本」類型。MySQL在列搜索中進行選擇

id category 
------------------- 
13 -1-, 
14 -2-, 
15 -1-,-2-,-3-,-4-, 
16 -2-,-4-, 

更新後的數據應該是這樣的:

id category 
------------------- 
13 -1-, 
14 -5-, 
15 -1-,-5-,-3-,-4-, 
16 -5-,-4-, 
+1

[你試過什麼?](http://www.whathaveyoutried.com/)。此外,你應該規範你的數據。這是構建數據的一種糟糕方式。 –

回答

1

選擇這些類別是這樣的:

select * from your_table where category like '%-2-%' 

但你的例子看起來像你想用代替。它可以這樣做:

update your_table set category = replace(category, '-2-', '-5-') 

這樣你就不需要where條款。

+0

您救了我的一天!非常感謝! –

0
SELECT * 
FROM tablename 
WHERE category LIKE '%-2-%' 
+0

感謝您的有益答案 –

0
SELECT * FROM table WHERE category LIKE '%2%' 
+0

感謝您的有用答案 –

0
SELECT * FROM table WHERE category like '%-2-%' 
+0

感謝您的有用答案 –