sql – 在Oracle ANSI join中混合使用“USING”和“ON”
发布时间:2020-05-23 05:51:22 所属栏目:MsSql 来源:互联网
导读:我写了一个像这样的Oracle SQL表达式: SELECT...FROM mc_current_view aJOIN account_master am USING (account_no)JOIN account_master am_loan ON (am.account_no = am_loan.parent_account_no)JOIN ml_client_account mc
|
我写了一个像这样的Oracle SQL表达式: SELECT ... FROM mc_current_view a JOIN account_master am USING (account_no) JOIN account_master am_loan ON (am.account_no = am_loan.parent_account_no) JOIN ml_client_account mca USING (account_no) 当我尝试运行它时,Oracle在“ON”自连接行中抛出一个错误:“ORA-25154:USING子句的列部分不能有限定符”. 如果我省略“am”限定符,它会说:“ORA-00918:列模糊定义”. 解决这个问题的最佳方法是什么? 解决方法错误信息实际上是(惊喜!)告诉你究竟是什么问题.对特定列使用USING子句后,不能在查询的任何其他部分中对该列名使用列限定符/表别名.解决此问题的唯一方法是不在查询中的任何位置使用USING子句,因为必须在第二个连接条件上使用限定符:SELECT ... FROM mc_current_view a JOIN account_master am ON (a.account_no = am.account_no) JOIN account_master am_loan ON (am.account_no = am_loan.parent_account_no) JOIN ml_client_account mca ON (a.account_no = mca.account_no); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql-server – 验证数据库更改(版本控制)
- sql-server – Sql Server 2005 – 如果不存在则插入
- SQl Function 创建函数实例介绍
- Sql Server Reporting Services和通过.NET应用程序报告
- sql – 为什么我允许有两个同名的索引?
- 生产者/消费者系统使用数据库(MySql),这样可行吗?
- sql – group by在范围内包含没有值的范围
- SQL 2008方言支持NHibernate
- SQL Server insert into tbl() select * from tb2中加入多个
- sql – 在数据库中存储不同图像的最佳方式是什么?
