簡體   English   中英

PostgreSQL獲取用戶的所有帳戶ID,其中用戶具有帳戶ID 33、34和35

[英]Postgresql get all account ids of users, where users have account ids 33, 34 and 35

注意:帳戶由用戶共享

查詢是獲取用戶的所有帳戶ID,例如,用戶具有帳戶ID 33、34和35。

SELECT A.id FROM accounts A
INNER JOIN account_user AU ON AU.account_id = A.id
WHERE AU.user_id IN (
    SELECT AU.user_id FROM account_user AU
    WHERE AU.account_id IN (33, 34, 35)
    GROUP BY AU.user_id
)
GROUP BY A.id;

還有其他寫方法嗎?

我正在做什么查找具有account_ids 33、34和35的所有唯一的users_ids查找每個用戶擁有的所有唯一的account_ids。 (帳戶在用戶之間共享)返回所有唯一的account_ids

如果所需的所有數據都在1個表中,則無需聯接:SELECT user_id,account_id FROM帳戶WHERE account_id IN(33,34,35);

如果您需要一個不同的列表,請使用不同的列表:SELECT DISTINCT user_id從帳戶WHERE account_id IN(33,34,35);

HTH,辛迪

暫無
暫無

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

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