[英]MySql query price between range
好的,所以我为我的搜索页面做了这个查询:
SELECT * FROM `posts` WHERE `ad_price` >= 0 AND `ad_price` <= 300
这部分显示了基于添加这些家伙的不同结果:“”
>= 0 AND `ad_price` <= 300
如果我说>= 0 AND `ad_price` <= 300
数据返回 0 到 30 之间的任何值,但如果我说>= "0" AND `ad_price` <= "300"
它得到的数字高达 10,000 和 2000 等等。为什么?
这是我完全准备好的 PHP 语句(我知道它们被视为字符串,但如果它在准备好的语句中,我该如何更改它):
$query = "SELECT * FROM `posts` WHERE `ad_title` LIKE CONCAT('%',?,'%') AND `ad_brand`
LIKE CONCAT('%',?,'%') AND `ad_price` >= ? AND `ad_price` <= ?";
$get_posts = $conn_posts->prepare($query);
$get_posts->bind_param("ssss", $title, $brand, $min_range, $max_range);
"ssss"
告诉 mysql 将所有输入值视为字符串。 将i
用于您希望被视为数字的参数。
例如
"ssii"
在你的情况下。
这在手册中有记录: https : //www.php.net/manual/en/mysqli-stmt.bind-param.php
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.