【发布时间】:2015-09-21 22:30:32
【问题描述】:
我有一个表 prices 有 4 列(id、price1、price2、date)
一些解释:
- id 未设置为自动递增,并且可以有许多相同的 ID 值(即 Id 123 可以存在 5 次但具有不同的参数)。
- price1 和 price2 是两个十进制值,将 price1 存储为起始价格,将 price2 存储为最终价格
- date 是 VARCHAR (15) 并将价格日期存储在代码中(如“J2015”——2015 年 1 月),并且是使用它的应用的某种 ID。
对 i.E. 的普通查询select Id、price1 和 price2 与查询一起使用
SELECT `id`, `price1`, `price2`
FROM `prices`
WHERE `price1` = '1.23' AND `price='3.45' AND `date`='J2015'
但后来一位客户想要扩展搜索。他想要所有符合以下条件的 ID(例如:)
price1 = '1.50' AND price2 = '1.75' AND date = 'AP2013'
还有
price1 = '1.39' AND price2 = '1.45' AND date = 'MAY2013'
起初我想使用 IN 参数,但那会/可能返回不正确的数据。所以我被困在这一点上。
【问题讨论】:
-
@Mihai 这将返回匹配任一条件的 ID,而不仅仅是同时匹配两个条件的 ID。