为了账号安全,请及时绑定邮箱和手机立即绑定

在sql查询中使用多个OR选择DISTINCT

在sql查询中使用多个OR选择DISTINCT

PHP
慕仙森 2021-11-05 15:10:01
我正在尝试使用多个 OR 编写一个查询,并对多个列使用 DISTINICT。但结果是 NULL 我在查询中缺少的内容。任何人都可以在这里帮助我。SELECT DISTINCT    P.user_p_id,    P.surl,    M.user_id,    M.user_p_id    FROM users P, page M    WHERE (P.user_p_id = '$urlid' OR P.surl = '$urlid' OR M.user_id = '$urlid' OR M.user_p_id = '$urlid')
查看完整描述

1 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

您应该使用 ON 子句进行适当的连接:


SELECT DISTINCT 

   P.user_p_id, 

   P.surl, 

   M.user_id, 

   M.user_p_id 

   FROM users P INNER JOIN page M 

   ON M.user_id = P.user_p_id

   WHERE '$urlid' IN (P.user_p_id, P.surl, M.user_id, M.user_p_id)

我使用ON M.user_id = P.user_p_id虽然不清楚是否要匹配这些列。

如果这是您需要的,您可以将 JOIN 的类型更改为 LEFT。


查看完整回答
反对 回复 2021-11-05
  • 1 回答
  • 0 关注
  • 194 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信