0

我的 sql 表中有一行看起来像这样

我想像这样使用 find_in_set 运行查询:

list
------------
1,2,5,33,3,4

SELECT * FROM mytable WHERE FIND_IN_SET( id, list ) 

并在新字段中获取结果的位置

4

1 回答 1

1

FIND_IN_SET()返回 id 值在列表中的位置,所以:

SELECT *,
       FIND_IN_SET( id, list ) as position
  FROM mytable 
 WHERE FIND_IN_SET( id, list )

或者

SELECT *,
       FIND_IN_SET( id, list ) as position
  FROM mytable 
 HAVING position > 0
于 2014-04-01T20:21:51.180 回答