选择用户和所有投票SQL

选择用户和所有投票SQL,sql,postgresql,Sql,Postgresql,我有一个users表,表中有user\u id和username字段,我是这样查询的: SELECT user_id, username FROM users WHERE user_id=$1 我还有一个投票表,其中有post\u id和user\u id字段。 user_id是一个外键,引用users表中的user_id字段 我想添加到我的初始查询中,以选择此用户的所有子投票,并使其在同一查询中运行。也许这需要进入一个单独的查询?我想一次完成这一切,以获得最准确的结果,但我还没有找到一种方法

我有一个
users
表,表中有user\u id和username字段,我是这样查询的:

SELECT user_id, username FROM users WHERE user_id=$1
我还有一个
投票
表,其中有post\u id和user\u id字段。 user_id是一个外键,引用users表中的user_id字段

我想添加到我的初始查询中,以选择此用户的所有子投票,并使其在同一查询中运行。也许这需要进入一个单独的查询?我想一次完成这一切,以获得最准确的结果,但我还没有找到一种方法

数据库是postgres btw

编辑 好的,首先我尝试了提供的两种内部联接方法,如果没有投票,这两种方法都不起作用

一旦有了选票,我就用左外的东西。。它返回如下表:

 user_id | username | post_id 
---------+----------+---------
       6 | dbot77   |       3
       6 | dbot77   |       5
但它会返回无用的重复信息

我只是想,只是我抓不住

 user_id | username | post_id 
---------+----------+---------
       6 | dbot77   |       3
         |          |       5
甚至更好

 user_id | username | vote_post_ids 
---------+----------+---------
       6 | dbot77   |       [5, 3, etc.]
         |          |       
试试这个:

SELECT users.user_id, users.username, votes.column_name
FROM votes
INNER JOIN users
ON votes.user_id = users.user_id
WHERE votes.user_id = $1;
请参阅:
试试这个:

SELECT users.user_id, users.username, votes.column_name
FROM votes
INNER JOIN users
ON votes.user_id = users.user_id
WHERE votes.user_id = $1;
请参阅:

好了,这终于对我起作用了

SELECT u.user_id
      ,u.username
      ,ARRAY(SELECT v.post_id FROM votes v WHERE v.user_id=u.user_id) AS votes 
FROM users u 
WHERE u.user_id=$1
它返回:

 user_id | username | votes 
---------+----------+-------
       6 | dbot77   | {3,5}

好了,这终于对我起作用了

SELECT u.user_id
      ,u.username
      ,ARRAY(SELECT v.post_id FROM votes v WHERE v.user_id=u.user_id) AS votes 
FROM users u 
WHERE u.user_id=$1
它返回:

 user_id | username | votes 
---------+----------+-------
       6 | dbot77   | {3,5}

你到底想从“选票”表中得到什么?每个用户的投票数?我想获得引用我的用户的每个投票行。我妈妈说这句话很简单,所以我觉得很尴尬。请帮助如果我们为您提供了sql,我们将对您造成伤害:-)您应该阅读有关内部连接的内容谢谢您给我一个参考,我正在尝试文档中的不同解决方案。。我对SQL很陌生,你到底想从“投票”表中得到什么?每个用户的投票数?我想获得引用我的用户的每个投票行。我妈妈说这句话很简单,所以我觉得很尴尬。请帮助如果我们为您提供了sql,我们将对您造成伤害:-)您应该阅读有关内部连接的内容谢谢您给我一个参考,我正在尝试文档中的不同解决方案。。我对sql非常陌生