簡體   English   中英

MySQL WHERE IN僅返回1條記錄

[英]MySQL WHERE IN Returns only 1 record

我正在以逗號分隔的字符串格式存儲個人檔案好友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'

在此處輸入圖片說明

請使用以下查詢

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

IN子句僅在您從整數字段中搜索值時使用

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

FIND_IN_SET

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM