php - sql查询条件

标签 php mysql codeigniter

我有一张这样的 table

days    discount    
  3      5.00   
  7     10.00   
10     15.00

最多 3 天的折扣价为 5 卢比。4 到 7 天的价格为 10 卢比,依此类推...我总共没有天数。如果天数 < 4,则获得 5.00。如果没有第 4 到 7 天,那么得到 10。我如何在 sql 查询中编写条件

最佳答案

以“6”天为例。您想要选择表格中天数大于 6(即 7 或 10)的所有折扣,然后选择最小的 (7)。

SELECT discount FROM yourTable
WHERE
days >= '6'
ORDER BY days DESC
LIMIT 1

(正如您所说的“3”也有折扣,我假设“4 到 7”表示包括 7。否则,从查询)

正如评论中提到的,如果可以的话,你应该使用准备好的语句,所以你会做这样的事情:

SELECT discount FROM yourTable
WHERE
days >= ?
ORDER BY days DESC
LIMIT 1

然后绑定(bind)那个?到一个整数。

关于php - sql查询条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4989574/

相关文章:

php - php中的css格式化

php - 从数据库中删除记录的最佳算法?

php - 如何在codeigniter中应用所有 Controller 中的所有 session ?

php - 如何在 Codeigniter 中重定向和删除 index.php

php - mysqli_multi_query() 重复获取 null

php - 如何从查询更新表(MYSQL)

php artisanserve命令显示错误消息

MySQL表格式使用watch

mysql - 更新后的 ID 列仍然失败,并出现 RangeError

php - 在 codeigniter 中发现数据库中有重复数据后显示提示