gpt4 book ai didi

php - 使用 BETWEEN 时更正 SQL Select 语句

转载 作者:行者123 更新时间:2023-11-29 03:12:17 26 4
gpt4 key购买 nike

我需要在这里做一些事情,但我对它应该如何工作感到困惑。

以下是我需要使用的变量:

Date Range
Employee ID
Team

如果有人想搜索特定帐号,还可以添加一个可能的附加搜索词 (acct_number='$_REQUEST[q]')。

每个变量都填充有一个下拉选择,第一个选项是 * 表示所有记录。日期是使用日期选择器、日历样式设置的,它会自动设置为日期 1=七天前和日期 2=今天。

我的查询:

SELECT * FROM table
WHERE job_date BETWEEN '$search_date1' AND '$search_date2' AND
employee_id='$searched_employee' AND team='$searched_team' AND
acct_number='$_REQUEST[q]'
ORDER BY employee_id desc

我知道那里有记录,但我的搜索仍然没有返回任何记录。在日期之后,AND employee_id='$searched_employee' 可能是 * 所以它应该返回所有记录,团队也是如此。

回应变量以尝试确保设置了某些内容给我这个:找不到日期在 2011-05-01 和 2011-05-31 之间的“员工”和团队“团队”的记录。

在使用了BETWEEN之后,Select语句中的AND可以不请求更多吗?

提前致谢!

--乔尔

最佳答案

您不能在 WHERE 子句中使用“*”通配符。

尝试为您在查询中输入的条件使用变量,例如:

if( is_numeric( $searched_employee ) )
$employee_cond = " AND employee_id=$searched_employee";
else
$employee_cond = "";

并将 $employee_cond 放在查询中,而不是 AND employee_id='$searched_employee'。重复您需要的每个条件。

关于php - 使用 BETWEEN 时更正 SQL Select 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6192810/

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