您好,我有一段代码可以查找数据库中 year_start 和 year_end 字段之间的年份。
这是我的代码。
SELECT * from $tableName where '$year' BETWEEN start_year AND end_year; LIMIT $start, $limit
现在这似乎工作正常,除非年份等于 end_year 值,例如,如果我正在搜索 2002 年并且结束年份值为 2002,则它不会返回任何结果。
如有任何建议,我们将不胜感激。
谢谢
最佳答案
如果start_year
和end_year
类型是
情报
$sql = '
SELECT *
FROM '.$tableName.'
WHERE TRUE
AND '.$year.' BETWEEN start_year AND end_year
LIMIT '.$start.', '.$limit.'
;
';
日期
$sql = '
SELECT *
FROM '.$tableName.'
WHERE TRUE
AND '.$year.' BETWEEN YEAR(start_year) AND YEAR(end_year)
LIMIT '.$start.', '.$limit.'
;
';
可变字符
需要施放它们
$sql = '
SELECT *
FROM '.$tableName.'
WHERE TRUE
AND '.$year.' BETWEEN
CAST(start_year AS UNSIGNED) AND CAST(end_year AS UNSIGNED)
LIMIT '.$start.', '.$limit.'
;
';
关于php - 查找两个数据库字段之间的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13497855/