我正在编写以下查询:
SELECT * FROM notes inner join item_source
on notes.item_ids=CONCAT(CONCAT(',', cast(item_source.id as varchar(10))), ',')
item_source.id
是表item_source
的主键(数字,auto_increment)。
notes.item_ids
是表格注释的varchar
字段。
我希望item_source.id
= 18
与notes.item_ids
= ',18,'
匹配。
我收到以下错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'varchar(10))), ',')
我做错了什么?
答案 0 :(得分:1)
您需要将其转换为char数据类型,然后才能获得结果
SELECT * FROM notes inner join item_source 在notes.item_ids = CONCAT(CONCAT(',',cast(item_source.id为char(10))),',')