簡體   English   中英

根據另一個表中的字段進行選擇

[英]Select based on field in another table

表1用戶,城市

表2用戶,朋友

我想select * from Table1為一個特定用戶和他的所有朋友(他們也是Table1中的用戶) select * from Table1

試過這個,它找到了所有數據,但為WHERE Table1.user = '$user'提供了多行,即使每個用戶名都是唯一的。

SELECT *
FROM Table1, Table2
WHERE Table1.user = '$user'
OR
(Table2.user = '$user' and Table2.friends = Table1.user)

非常感謝

您基本上有兩個不同的查詢(選擇用戶1的信息,選擇用戶1的朋友的信息)。 您可以將它們與UNION組合使用。

SELECT
  table1.user,
  table1.city
FROM
  table1
INNER JOIN
  table2
ON
  table1.user = table2.friends
WHERE
  table2.friends = '$user'

UNION

SELECT
  user,
  city
FROM
  table1
WHERE
  user = '$user'

暫無
暫無

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

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