oracle - 在 oracle 上连接两个表,其中表 A 上的一列正在查找表 B 上两列的值
问题描述
我正在尝试加入两个表,表 A 有一列“Col1”,其中包含帐户号和 ID 值,表 B 有两列名称帐户“Dev”和 ID 列“Ops”,我正在尝试将表 B 加入表A 在 Col1 = 表 B 上的 dev 列,或 Col1 v= 表 B 上的 Ops 列的情况下
从表 a、表 b 中选择 *,其中 a.Col1 = b.Dev 或 a.Col1 = b.Ops
解决方案
线索在错误消息中-您在评论中披露了该消息,而不是将其包含在原始问题中(正如您应该做的那样)。
它表示Ops
第二个表中的(ID)列是number
数据类型。当查询尝试将第一个表中'Joe'
的列中的名称与(id)之类的数字匹配时 - 就像在第二个表中的名称列不匹配时一样 - 它会尝试将字符串转换为号,导致您看到的错误。在这种情况下,Oracle 会尝试将字符串转换为数字,而不是反过来。Col1
2381
'Joe'
'Joe'
解决方法很简单 -a.Col1
与to_char(b.Ops)
.
希望您能够修复第一张桌子 - 它的设计存在致命缺陷。首先,您不应该忍受这种废话。
推荐阅读
- c# - 我将如何连接到提供证书文件 (.ovpn) 然后还指定用户名和密码的 VPN?
- angular - 使用 get() 后如何在 html 中显示 firestore 集合的文档数据
- android - 如何转储前台 Android 活动的 XML 布局(没有 uiautomator)?
- python-3.x - 如何在谷歌云构建中运行 REST API 来构建触发器
- angular - 如何禁用垫单选按钮的焦点?
- python-3.x - Python 在 curl 中请求等效于“--proxy-header”的 SSL 认证
- angular - 内置指令、属性指令和结构指令有什么区别?
- xamarin.forms - 无法从代码中创建的数据模板获取父绑定上下文
- javascript - 浏览器上的 JavaScript 模块
- android - Gson 不将值分配给直接内部对象,但如果我使用数组,它会分配值