【发布时间】:2014-08-23 07:53:12
【问题描述】:
我有一个选择,它给我带来了一些主键。我需要从其他表中选择上一个查询中未列出的所有值。我该怎么做?
我一直在尝试:
SELECT id
FROM tab1,
,(SELECT id...
WHERE LIKE '%abc%'
) AS result
WHERE result != tab1.id;
但是没有用,它还给我带来了来自子查询的数据。我正在使用 PostgreSQL。
【问题讨论】:
-
result是您的内部查询结果的别名,作为表名,选定的列将是该表的列。所以你只把它当作一张桌子。然后你需要做result.id在比较中使用特定的列。 -
这是我现在的 SQL:SELECT distinct(query1.codcli) FROM tbcli as query1 RIGHT OUTER JOIN (SELECT tab2.codcli FROM tbsrv as srv INNER JOIN tbsrvcli as srvcli ON srv.codserv = srvcli.codserv INNER JOIN tbcli as tab2 ON tab2.codcli = srvcli.codcli where servico not like '%Sonic%') as query2 ON query2.codcli = query1.codcli;但还是不行
-
为什么在你使用 PostgreSQL 的时候这个标签是 MySQL?
标签: sql postgresql