unix_timestam-6ren">
gpt4 book ai didi

php - 如何在动态查询中模拟 WHERE 1?

转载 作者:行者123 更新时间:2023-11-29 04:05:26 25 4
gpt4 key购买 nike

我正在像这样动态地进行查询:

$query = "SELECT u.*
FROM users u
WHERE date_time > unix_timestamp(DATE_SUB(now(), INTERVAL 1 $range))";

$range 也包含这样一个词:

switch ($_GET['range']){
case "week":
$range = "WEEK";
case "month":
$range = "MONTH";
case "year":
$range = "YEAR";
case "ALL":
$range = <I don't know what should I put here to get the expected result>;
}

正如我在上面所说的,我想将某些东西设置为 $range 值,以使 WHERE 子句类似于 WHERE 1。我该怎么做?

最佳答案

或许在您的 where 子句中使用 case 语句?

 $query = "SELECT u.*
FROM users u
WHERE CASE {$range}
WHEN 'ALL' then TRUE
ELSE date_time > unix_timestamp(DATE_SUB(now()
, INTERVAL 1 {$range}))
END";

关于php - 如何在动态查询中模拟 WHERE 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45468750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com