我需要帮助创建sql查询。
我要获取所有其child的resu id都不为空的订单。
在下面的示例中,您将看到
order_audit.order_id W1
一对多关系
temp_order_id W1_1
以及 W1_2
. 这个 temp_order_id
进一步
res_id 12
以及 32
. 这个命令 W1
应该是回应。
万一 W2
你可以看到 W2_1
有
resp_id null
. 所以这个不应该拉。 order_audit
+----+----------+ | id | order_id | +----+----------+ | 1 | W1 | | 2 | W2 | | 2 | W3 | +----+----------+
order_mapping
+----------+---------------+ | order_id | temp_order_id | +----------+---------------+ | W1 | W1_1 | | W1 | W1_2 | | W2 | W2_1 | | W2 | W2_2 | | W3 | W3_1 | +----------+---------------+
temp_order_table
```
+---------------+--------+
| temp_order_id | res_id |
+---------------+--------+
| W1_1 | 12 |
| W1_2 | 32 |
| W2_1 | null |
| W2_2 | 33 |
| W3_1 | null |
+---------------+--------+
从你的截图上看,似乎有一个领先的空间 `Account` (也许还有后面的)。
任何帮助都将不胜感激
3条答案
按热度按时间ubby3x7f1#
我会用
group by
以及having
:2izufjch2#
你可以用一个不在为空的顺序
edqdpe6u3#
您可以自然地联接所有其他2个表,并检查res\u id是否为null。
这里是sqlfiddle链接的链接