[英]error “column ambiguously defined” with column
下面是列出列的所有記錄的SQL連接查詢:dname,ename和location。 當我包含列“位置”時,它會拋出一個錯誤:“列模糊定義”
SQL> select dname,ename,location from emp e join dept d on d.deptno=e.deptno;
由於location
存在於表( emp
, dept
)中,因此您需要表格alise( e
或d
)來明確定義它所來自的列( d.dname, e.ename, e.location
)。
select d.dname, e.ename, e.location
from emp e join
dept d
on d.deptno = e.deptno;
只要查詢中有多個表,就要限定所有列引用! 這只是一個可以防止出現問題的好習慣。
執行此操作時,請使用表別名作為所引用表的縮寫。 所以,我猜這是你的查詢打算:
select d.dname, e.ename, e.location
from emp e join
dept d
on d.deptno = e.deptno;
如果您使用具有相同列名ex的數據表2,則必須指定表名和字段說明符:“select p.productName from products p inner join orders o on p.proID = o.proID”list list of products table是:proID,proName,proPrice和訂單表的列表列是:proID,oid,proName,proPrice。 我希望這有助於你的描述!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.