+---------+----------+-----------
| id | value | map_id |
+---------+----------+-----------
| 1 | avcne | 1,2,3 |
+---------+----------+-----------
| 2 | fdhsj | 5,6,7 |
+---------+----------+-----------
| 3 | kqrno | 8,9,0 |
+---------+----------+-----------
FROm上面的表格
SELECT value FROM table_above where map_id = 2
然后结果将是'avcne'。
SELECT values FROM table_above where map_id = 6
然后结果将是'fdhsj'。
有没有更好的方法可以在不使用%-%
的情况下执行此操作,例如
SELECT value FROM table_above where map_id = %2%
提前致谢。
注意:这仅适用于临时表。
答案 0 :(得分:0)
MySQL的find_in_set
正是您所寻找的:
SELECT value FROM table_above WHERE FIND_IN_SET(2, map_id)