mysql - 尝试显示时 SQL 歧义

标签 mysql sql select

考虑我试过的以下查询,有两个表,Orders 和 Customers,每个表都有列名称 CustomerID,当我尝试显示两个 CustomerID 时,只有一列显示,我不明白为什么会这样,或者我是理解基础错误。

SELECT Customers.CustomerID,Orders.CustomerID
FROM customers
inner JOIN orders
on customers.customerid=orders.customerid;

当我尝试只显示一列时,它显示得非常好

SELECT Customers.CustomerID
FROM customers
inner JOIN orders
on customers.customerid=orders.customerid;

SELECT Customers.CustomerID
FROM customers
inner JOIN orders
on customers.customerid=orders.customerid;

所以我的问题是为什么我不能同时显示两者。

最佳答案

使用别名

SELECT Customers.CustomerID as customerid,Orders.CustomerID as ocustomerid
FROM customers
inner JOIN orders
on customers.customerid=orders.customerid;

关于mysql - 尝试显示时 SQL 歧义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38611729/

相关文章:

sql - 如何高效查询每个类别的 n 条记录

php - 在循环中进行许多小查询可以吗(真的很糟糕)吗?

mySQL:这是递归(或相互依赖)的一种形式吗?

java - 插入mysql表时出现异常

c# - 处理查询中不需要的 MS Access 文本字段的最安全实用方法是什么?

mysql - 如何根据名称选择列

php - 复杂的mysql表设计选择

mysql - 触发器中的多个命令(更新具有不同条件的多个列)

sql - 为什么这是 SQL 存储过程中的无效列?

动态创建的 JQuery Select 元素