gpt4 book ai didi

sql - 自然加入场景

转载 作者:行者123 更新时间:2023-12-04 21:14:21 24 4
gpt4 key购买 nike

当我们使用 NATURAL JOIN 连接两个表时,连接操作是在 Common Column Names 的基础上执行的。当我们在两个表中有两个同名的列时,只显示公共(public)记录。

我有一个查询,当我们有同名但数据类型不同的列时,这些列也会被连接。我的意思是假设table1中column_1的数据类型为INTEGER,table2中column_1的数据类型为VARCHAR,连接是基于这两列进行的。

简而言之,当两个同名列的数据类型不同时,如何进行自然连接?

最佳答案

NATURAL JOIN 通常被认为是一种反模式。

它会导致许多可维护性问题。这只是其中之一。

改为使用显式连接,您可以在其中键入强制转换字段。

  table1
INNER JOIN
table2
ON table2.fieldX = CAST(table1.fieldX AS INT)

根据经验和个人喜好,显式比隐式更易于维护。而且没有性能问题。

关于sql - 自然加入场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12914609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com