sql - Cross join InterBase 根据条件获取重复记录
问题描述
我目前正在通过使用 Firebird 与 InterBase 合作。我需要使用条件获取两次记录,但是每次运行查询时,我都会收到一条错误消息。有没有办法绕过 InterBase 中的交叉连接?是否有一种更简单的方法可以将此逻辑添加到查询中。看起来火鸟不会接受交叉连接。
SELECT EMPLOYEE_NAME, LAST_NAME, CACODE
FROM EMPLOYEESTABLE
(
SELECT 889 AS CACODE, 8592-265-44444 AS STANDARDCACODE
UNION ALL
SELECT 695 AS CACODE, 8554-265-44578 AS STANDARDCACODE
) C
解决方案
选择总是需要from
的。该表RDB$DATABASE
返回 1 行带有数据库名称,因此我们可以使用它。我认为你正在寻找这样做:
SELECT EMPLOYEE_NAME, LAST_NAME, CACODE
FROM EMPLOYEESTABLE,
(
SELECT 889 AS CACODE, '8592-265-44444' AS STANDARDCACODE FROM RDB$DATABASE
UNION ALL
SELECT 695 AS CACODE, '8554-265-44578' AS STANDARDCACODE FROM RDB$DATABASE
) C
推荐阅读
- visual-studio-code - VSCode 默认预览 markdown
- r - 控制分布和多个处理分布之间的 QQ 图
- scheme - 尝试递归追加,我在方案中做错了什么?
- javascript - Three.JS 中的多维数据集
- r - 为什么使用列表别名 .() 选择和重命名 data.table 的列会返回错误?
- cypress - Cypress:如何进入视频中的特定时间?
- javascript - React Navigation bottomTabNavigator “createRouter 不是函数”
- javascript - RubyMine:不推荐使用 javascript 事件?
- ruby-on-rails - 当在Passenger+Nginx+Rails 配置中处理请求需要很长时间时检测/警报
- python - SSH 在脚本中不起作用并给出错误“ssh”不是内部或外部命令、可运行程序或批处理文件