mysql中WHERE CLAUSE的百分比

时间:2014-03-30 13:45:17

标签: mysql where percentage

我想让所有记录的价格降低20%或更多的给定值。

+----+------------+----------+---------+
| ID | Item        | Category |  price  |       
+----+------------+----------+-----------+
|  1 | Popular     | Rock     |  1000
|  2 | Classical   | Opera    |  5000 
|  3 | Popular2    | Jazz     |  6000
|  4 | Classical2  | Dance    |  8000
|  5 | Classical3  | General  |  4825
+----+------------+----------+------------+

用户必须传递两个参数

我 - 类别

II-价格

我需要显示所有具有相同类别和价格的商品比用户价值低20%至20%。 像这样的东西

SELECT * FROM Table1 WHERE Categry='ROCK' AND price > (20% less price of user's price) AND price < (20% greater than user's price)

2 个答案:

答案 0 :(得分:1)

假设@price代表用户的价格:

SELECT * 
FROM   Table1 
WHERE  Categry='ROCK' AND price BETWEEN (0.8 * @price) AND price < (1.2 * @price)

答案 1 :(得分:0)

SELECT
    *
FROM
    Table1
WHERE
    Categry='ROCK'
    AND price > (userprice * 0.8)
    AND price < (userprice * 1.2)