MySQL WHERE IN仅返回1条记录

红色病毒

我正在以逗号分隔的字符串格式存储个人档案好友ID。当运行查询时,它给出1条记录,而它应该返回2条记录。

MySQL查询

SELECT * FROM PROFILES WHERE profile_id IN(SELECT profile_friends FROM PROFILES WHERE profile_id = '1')

给出此结果(结果应为2条记录,而不是1条记录) 在此处输入图片说明

当我运行以下查询时,在profile_friends字段中给了我两个ID。

SELECT profile_friends FROM PROFILES WHERE profile_id = '1'

在此处输入图片说明

阿什什·冈达里亚(Ashish Gondaliya)

请使用以下查询

SELECT * FROM PROFILES WHERE FIND_IN_SET(profile_id,(SELECT profile_friends FROM PROFILES WHERE profile_id = '1'))

IN子句仅在您从整数字段中搜索值时使用

但是您的字段(profile_friends)是字符串,因此需要使用以下子句。

FIND_IN_SET

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

尝试从MYSQL数据库打印我的所有记录,但仅显示1条记录

在 WHERE 条件下选择 MySQL 中的最后一条记录

如何根据where条件在MySQL中获取前4条记录

mysql SELECT列,但仅使用WHERE

MySQL-根据子记录上冲突的WHERE子句返回父记录

MySQL-根据子记录上冲突的WHERE子句返回父记录

PHP / MySQL where子句返回空值

MySQL Where子句不返回任何结果

MySQL-仅选择一条匹配记录

MySQL查询每行仅获取4条记录

在MySQL中使用Java仅添加10条记录

MySQL:如何使Haveing子句仅按Where子句中的记录过滤?

查询返回0条记录时更改MySQL比较值

为什么在使用WHERE子句时,MySQL的LEFT JOIN返回“ NULL”记录?

PHP和MySQL动态查询仅返回没有where子句的结果

MySQL中的MYSQL(WHERE IN)

SQLite UPDATE仅匹配WHERE子句的一条记录,另一条记录具有MAX

如何在Codeigniter Active记录表单中使用WHERE 1编写mysql查询

当带有ALL的where子句返回true时,为什么我的MySQL语句不返回任何记录?

在Mysql中使用where子句获取重复记录

MySQL存储过程where子句不过滤记录

MySQL Join在WHERE语句中包括不匹配的记录

MySQL SUM和WHERE仅给出单个结果

MYSQL:仅根据日期返回每个组的最新记录

MySQL:即使WHERE为null,也返回值

在mysql中通过“ WHERE”返回值的问题

MySQL存储过程返回所有行,而忽略WHERE子句

MySQL 为不应该匹配的 WHERE 子句返回结果

mysql where子句中不返回空吗?