我一直试图找出一种方法来根据两列的值选择唯一的行。例如,以下是我的文件的示例/示例:
s r
10 12
10 13
14 10
10 12
14 10
12 10
这就是我希望我的输出看起来像:
s r
10 12
10 13
14 10
我尝试过使用此代码
SELECT * FROM `message` WHERE (`s_id`=$b_id or 'r_id'=$b_id) GROUP BY
r_id
然而,它只选择10,12 10,11而且我还需要使用的是“我的意思是第三行”
在这种情况下,$ b_id是从会话中获得的,它可能是s或r
答案 0 :(得分:1)
您可以尝试使用DISTINCT
SELECT DISTINCT s_id,r_id FROM
{消息{1}} {S_ID {1}}
总是尝试指定所需的列而不是*(所有)它提高性能
答案 1 :(得分:0)
这样做
select distinctrow s_id,r_id from table where s_id = 10 or r_id = 10
或者使用"拥有"两列的子句和分组
答案 2 :(得分:0)
经过两天的努力,我成功地找到了解决问题的方法
SELECT * FROM `message` WHERE s=$b_id or r=$b_id AND (r and
s)<>(s_ and r) GROUP BY s,r