Postgresql

通過外鍵“列印”特定列

  • September 27, 2018

我有三張桌子:

  • Users
  • Users_request
  • Users_applications

Usersid列,該列與Users_request.id最終Users_request.id相關Users_applications.id

我嘗試這樣做:

使用者表有一個名為的列name,而 User_applications 有application_name。我想通過 JOIN 子句僅“列印”那些帶有行的列。

期望的輸出:

user| application_name|
-----|------------------
user1| application1
user2| application2
userN| applicationN

我有下一個,但我想改進它而不使用硬程式碼Users_applications.id

SELECT Users.id, Users_applications.name 
 FROM Users, Users_applications 
WHERE Users.id = 'User1' AND User_applications.id = n ;

有沒有其他方法可以通過僅Users.id使用 JOIN 子句來完成它?

提前致謝。

表 Users 有 id 列,該列與 Users_request.id 相關,最後 Users_request.id 與 Users_applications.id 相關

所以 Users.id = Users_request.id 和 Users_request.id = Users_applications.id 這意味著 Users.id = Users_applications.id

然後你可以這樣做:

SELECT Users.id, Users_applications.name 
FROM Users INNER JOIN Users_applications  ON Users.id = Users_applications.id
WHERE Users.id = 'User1';

引用自:https://dba.stackexchange.com/questions/218655