在字符串中查找id组中的id - MYSQL

时间:2017-05-19 17:41:24

标签: mysql

我有列,其中我将ids存储在以逗号分隔的字符串中: 76,88

我想从另一个ID为 78,88

的表中选择行

我尝试使用MYSQL IN()功能,但它只获得第一个ID 78

那么如何在同一个查询字符串中解决它呢?

SELECT  u.user_id,
        u.username,
        u.firstname,
        u.lastname,u.status

        FROM users u WHERE u.user_id IN(
            SELECT likes FROM posts WHERE post_id='200'
        )

谢谢。

1 个答案:

答案 0 :(得分:0)

FIND_IN_SET()函数返回第二个字符串中字符串的位置。当字符串列表中不存在搜索字符串时返回零。

语法:

<强> FIND_IN_SET(参数1,参数2)

SQL将如下所示:

SELECT  u.user_id,
        u.username,
        u.firstname,
        u.lastname,u.status

        FROM users u WHERE FIND_IN_SET(u.user_id,
            (SELECT likes FROM posts WHERE post_id='200') 
        )

注意: argument1是一个字符串,用于检查参数2中逗号分隔的字符串