加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL内连接具有相同列名称的两个表

发布时间:2020-12-12 16:10:19 所属栏目:MsSql教程 来源:网络整理
导读:我有两个可变量列的表. (我不知道有多少列或什么名字将会),例如表A和表B. 表A: ID | B_ID | {variable} 表B ID | {variable} 查询: SELECT TableA.*,TableB.* FROM TableA INNER JOIN TableB ON TableA.B_ID= TableB.id; 当TableA和TableB都具有相同名称的
我有两个可变量列的表. (我不知道有多少列或什么名字将会),例如表A和表B.

表A:

ID | B_ID | {variable}

表B

ID | {variable}

查询:

SELECT TableA.*,TableB.* FROM TableA INNER JOIN TableB ON TableA.B_ID= TableB.id;

当TableA和TableB都具有相同名称的列时,我无法区分两个不同的列.例如,两个表都有“Name”列,此查询将导致:

ID | ID | B_ID | NAME | NAME |
 1 | 35 | 35   | bob  | jim  |

我正在寻找的是区分两个表之间的一种方式.优选地,对于诸如列名称的prefex.

TableA_ID | TableB_ID | TableA_B_ID | TableA_NAME | TableB_NAME |
        1 |        35 |          35 |         bob |         jim |

我知道“AS”关键字,但问题是我不知道列名将在手之前. (我不知道TableA或TableB是否有列名)

所以我的问题是

当表可能具有相同的列名称时,如何区分两个表之间的列与INNER JOIN?

我正在使用SQLite3.

解决方法

您的结果集(给定您的查询)应该具有所有TableA列后面的所有TableA列,所以当您进入第二个ID列时,您将了解您进入TableB数据.

也就是说,对我来说,您正在查询两个表中的所有数据,您对此功能无关,这似乎是奇怪的

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读