gpt4 book ai didi

php - 使用可选参数构建 SQL 语句

转载 作者:行者123 更新时间:2023-11-29 03:58:22 25 4
gpt4 key购买 nike

我在 PHP 中使用原始 SQL。使用可选参数构建语句的好方法是什么?例如,我需要根据性别、年龄和出身等标准过滤用户资料。以什么形式传递这些参数最好?

这是我目前的做法:

$params = "";

if( isset($_GET["gender"]) ){

$gender = "";

switch( $_GET["gender"] ){
case "male":
$gender = " WHERE users.gender = 1 ";
break;
case "female":
$gender = " WHERE users.gender = 0 ";
break;
}

$params = $params + $gender;
}

最佳答案

可能适合您的简单方法:

1 - 以“1=1”开始您的 WHERE 子句,这样您的所有条件都可以简单地通过“AND FIELD = :PARAM”,而不用担心是否已经添加了“WHERE”一词

2 - 使用 ISNULL() 构建基本上忽略未提供参数的查询。

例子:

SELECT *
FROM MY_TABLE t
WHERE 1=1
AND (t.gender = ISNULL(:gender,t.gender))
AND (t.age >= ISNULL(:age,t.age))

关于php - 使用可选参数构建 SQL 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6682353/

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