查询列的 SQL 连接问题

Posted

技术标签:

【中文标题】查询列的 SQL 连接问题【英文标题】:SQL Join issue with query columns 【发布时间】:2021-03-10 14:25:18 【问题描述】:

我是 SQL 新手,我正在尝试构建一个工具。基本上,我使用 JOIN 根据匹配条件将两个不同的数据库表合二为一。 我现在的问题是,一旦完成此操作,我如何告诉查询在每个表中查找特定列。我只需要两个表中的一些,但由于通配符,我的查询目前全部返回。如 FDE_XML_VIEW 中的 STAR 列和 WKS_LOG_VIEW 中的 localColAlt:

select *
from EXCDS1.dbo.FDE_XML_VIEW join
     EXCDS.dbo.WKS_LOG_VIEW
     on WKS_LOG_VIEW.AID = FDE_XML_VIEW.ACID
where LastUpdateMachine = 'R02' and
      LastUpdateTime > '2021-03-10 08:30:00.000' and
      LastUpdateTime < '2021-03-10 09:00:00.000';

提前致谢。

【问题讨论】:

使用select 选择您想要的列。 查看 Alias,使连接和选择列更易于阅读 嗨戈登我有点困惑我把第二个表 SELECT 即 WKS_LOG_VIEW 放在哪里?两个 SELECTS 都可以在 JOIN 之前运行吗? select table1.col1, table2.col4 from table1 join table2... 是的,学习如何使用别名 【参考方案1】:

您可以为表使用变量名(别名),然后使用这些别名选择所需的列,而不是检索所有内容

示例

SELECT t1.id, t2.id FROM table1 AS t1 
INNER JOIN table2 AS t2 ON t1.id = t2.table1_id
WHERE t1.id = 1;

【讨论】:

谢谢你,我有点困惑,因为这些表位于两个不同的数据库中。 @ZZBeard 如果您使用两个不同的数据库,您可以在表引用前加上您的数据库名称。例如:database1.table1database2.table2

以上是关于查询列的 SQL 连接问题的主要内容,如果未能解决你的问题,请参考以下文章

pandas中的SQL查询:根据其他列的组合在列中连接多行

将行转换为列的 MS SQL 连接查询

复杂的sql连接查询

基于另一列的最大值的列上的 SQL 内连接 [重复]

SQL学习笔记 ----Mysql数据库的条件查询

SQL 数据库 连接查询 变量if elsewhile