You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Outer Join关联固定值查询?适配SQL Server与MySQL

跨SQL Server与MySQL的固定ID集合左连接解决方案

要实现将固定ID集合作为必填字段与表X执行外连接,同时适配SQL Server和MySQL,可采用标准SQL的临时数据集左连接写法,具体如下:

通用解决方案代码

SELECT fixed_ids.id, x.name
FROM (
    VALUES (1), (3), (10)
) AS fixed_ids(id)
LEFT JOIN x ON fixed_ids.id = x.id;

逻辑说明

  1. 用VALUES子句构造包含目标固定ID的临时数据集fixed_ids,作为左表;
  2. 通过LEFT JOIN关联表X,关联条件为两边ID相等;
  3. 左连接会保留左表(固定ID集合)的所有记录:匹配到表X中对应ID的记录时,带出name字段值;未匹配的记录,name字段显示null,完全符合期望结果。

结果验证

执行上述语句后,返回结果与预期一致:

id  name
1   A
3   C
10  null

说明:为何原尝试语句不可用

原语句中的IN (...) (+)是Oracle专属的旧版外连接语法,SQL Server和MySQL均不支持,且该写法本质是过滤表X的记录,无法保留未匹配的固定ID。

内容的提问来源于stack exchange,提问作者Angel Doza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 01:11:00