Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何构造此查询以根据条件组合两个表_Sql_Postgresql - Fatal编程技术网

Sql 如何构造此查询以根据条件组合两个表

Sql 如何构造此查询以根据条件组合两个表,sql,postgresql,Sql,Postgresql,我是新来的,我读了很多书,但直到现在我还没有一个账户,我想知道是否有人能帮我 我有三张桌子: 任务 使用者 注释 任务和注释具有用户表的外键“id”。 Notes具有任务表中的外键“id” 这些是单独的查询: SELECT * FROM notes WHERE taskid='id' SELECT id, userid, taskid, nickname FROM notes WHERE taskid='id' AND NOT userid='id' SELECT * FROM notes

我是新来的,我读了很多书,但直到现在我还没有一个账户,我想知道是否有人能帮我

我有三张桌子: 任务 使用者 注释

任务和注释具有用户表的外键“id”。 Notes具有任务表中的外键“id”

这些是单独的查询:

SELECT * FROM notes WHERE taskid='id'

SELECT id, userid, taskid, nickname FROM notes WHERE taskid='id'
AND NOT userid='id' 

SELECT * FROM notes WHERE taskid='id' AND userid='id
我想做的是将这个查询合并成一个查询,这样我就可以在同一个表中找到与上面的查询匹配的任务和提供

我试图对所有语句进行内部联接和联合,但每个select语句都有不同的列数,所以我有点卡住了

我想要结束的是所有任务加上该任务的所有注释,其中用户是任务和注释的所有者。加上用户不是所有者的任务的所有注释(仅为注释信息的子集),而不是所有字段

提前感谢,如果您需要更多信息,请询问

好的,这是一份电子表格,其中有一个简单的结果示例:


如何只做
从notes中选择*,taskid='id'按用户id排序,然后用您的编程语言进行其余的处理?

我找到了答案,答案很简单,另一个人建议我只需在简单查询中清空其中一个表的字段,但现在查询工作了

你能发布sqlfiddle和预期的输出吗?我会努力做到这一点。我正在使用Postgres。样本数据和期望的结果也会有所帮助。你如何将ascii格式的表添加到这里的帖子中?这一切都出格了,我在另一篇文章上看到了一个很好的水平滚动条。我目前正在做这项工作,但是循环完成所有任务,然后进行更多sql查询的速度非常慢。我想把它合并成一个查询,以提高速度和效率。这是一个rest api,所以这个查询需要很长时间,这样做,我假设如果我在一个sql查询中完成所有查询,它会更快。如果你真的需要更多的sql查询,那么你还没有显示所有查询,是吗?所有查询都在第一篇文章中。你的编程语言是什么?所有这些问题都可以通过这一个查询解决,不需要额外的查询和编程语言中的一些代码。我使用go,但我不知道这有什么关系,我在问我应该使用什么sql查询。我使用数据库中的一个函数将所有查询合并为一个查询。