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

如何关联Server与Company表,查询服务器时显示公司名称而非ID?

关联Server与Company表查询服务器信息并替换companyID为公司名称

要实现查询指定companyID对应的所有服务器完整信息,并将结果中的companyID替换为对应CompanyName,只需通过表关联结合字段选择即可完成,具体方案如下:

基础实现(仅返回有对应公司记录的服务器)

使用INNER JOIN关联两张表,通过共同的companyId字段匹配关联,同时在查询结果中选择Company表的CompanyName替代Server表的companyId:

SELECT 
    s.serverId,
    s.serverName,
    s.serverIp,
    c.CompanyName,
    s.status,
    s.serverCreationDate
FROM Server s
INNER JOIN Company c ON s.companyId = c.companyId
WHERE s.companyId = '你的目标companyID';

语句说明

  • 为Server表起别名s、Company表起别名c,简化SQL语句的书写
  • INNER JOIN会只保留两张表中companyId匹配的记录,确保返回的服务器都有对应的公司名称
  • WHERE子句用于筛选出指定companyID的服务器数据

兼容无对应公司的情况

如果存在服务器的companyId在Company表中无匹配记录的场景,可使用LEFT JOIN确保服务器信息仍能返回,同时用COALESCE函数处理空值:

SELECT 
    s.serverId,
    s.serverName,
    s.serverIp,
    COALESCE(c.CompanyName, '无对应公司') AS CompanyName,
    s.status,
    s.serverCreationDate
FROM Server s
LEFT JOIN Company c ON s.companyId = c.companyId
WHERE s.companyId = '你的目标companyID';

语句说明

  • LEFT JOIN会保留Server表中符合条件的所有记录,即使Company表中无匹配的companyId
  • COALESCE函数将空的CompanyName替换为自定义文本(比如“无对应公司”),优化结果可读性

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 01:05:18