PostgreSQL - 查询 3 个表

PostgreSQL - Query 3 Tables

我有 3 个表:表 1、表 2、表 3 如下图:

我将根据 Value 字段过滤 Table3。 示例:

输入:xxx

输出如下所示:
输出应该基于Table1的ID1。

我使用以下 SQL 查询进行查询:

SELECT id, 
       id1, 
       id2, 
       value 
FROM   table1, 
       table2, 
       table3 
WHERE  ( table1.id1 = table3.id1 
         AND table2.id2 = table3.id2 ) 
       AND ( table3.value LIKE ? 
              OR table3.value ~ '[0-9]' )

请给我一个 SQL 查询。

请查找SQl查询:

select
table3.id, table3.id1, table3.id2, table3.value
from table3 
left join table1 on table3.id1=table1.id1
where
table1.id1 in (SELECT table3.id1 from table3 where table3.value="xxx")

希望这对你有用:)