java - 我的数据库中有两个表。如果其他表不是该记录,我想从一个表中选择记录

标签 java sql database select oracle10g

我有两个表“A”和“B”。只有当“B”表不是根据给定 ID 请求的值时,我才想从表“A”中选择记录。在我的代码中,我通过我的“ID”来选择记录。如果只有“B”表不存在请求的记录,我想从“A”表中选择记录。

最佳答案

你几乎可以把它写成 SQL 词

SELECT * 
FROM TABLE A
WHERE A.ID = ? 
AND A.ID NOT IN (
    SELECT B.ID 
    FROM TABLE B
    WHERE B.ID = ?
)

使用 ? 作为占位符和 PreparedStatement(安全)或手动将它们替换为您想要的值(不安全)。

关于java - 我的数据库中有两个表。如果其他表不是该记录,我想从一个表中选择记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18649187/

相关文章:

java - Java List<String> 和 List<String>[] 有什么区别

SQL查询根据ID将多行合并为一行,同时将其他值保留在同一行中?

sql - 在数据库中移动行 'up and down'(SQL查询帮助)

sql - CFQuery 没有将时间部​​分保存到 Oracle 日期时间字段

database - 在 plpgsql 触发器函数中访问 OLD.myLoopVariable/NEW.myLoopVariable?

java - Sonar 中的单元测试执行时间非常长

java - 等待异步回调完成并传递值

MYSQL 如果条件匹配,则将数据从一个表列移动到另一表列

database - 在 CQLSH 中使用 "-f"标志运行 query.cql 文件的问题

java - 如何修复后续请求中的错误 "Only one ConfirmCallback is supported by each RabbitTemplate"