【发布时间】:2023-03-17 14:36:01
【问题描述】:
有一个包含以下两个表的 Oracle 数据库。连接是1:n,所以一个企业可以有很多订单。
现在我必须编写一条 SQL 语句,用于检查是否存在给定名称下的业务,以及预定义的订单日期是否存在。
示例: 我们有名为“B1”的业务,该业务有两个“订单”,分别为“2020 年 7 月 4 日”和“2021 年 3 月 1 日”。 比方说,我有一个名称“B1”和一个输入集('7/4/2020'、'8/1/2021'),它应该返回一些信号,表明“具有这些订单日期的 B1 不存在”。但是名称“B1”和输入集('3/1/2021', '7/4/2020')返回“B1 已经存在这些订单日期”。
我的问题:我没有找到正确的语法。如何在“IN”运算符的输入集中使用日期?这样做最有效的想法是什么?
【问题讨论】:
-
在您的查询中是“输入集”字符串列表?
-
在普通的 SQL 查询中,您会写类似
where order date in (date '2020-07-04', date '2021-01-03')的内容,但由于您引用“输入集”、“数组”和“SQL Developer”,因此不清楚您要做什么或什么不起作用。
标签: sql oracle oracle-sqldeveloper