我想使用MATCH AGAINST查询而不是类似的查询。我想在数据库中搜索未指定属性的某个值(例如WHERE id = 2045)。 我的网站上有一个类似google的搜索栏,例如,我想写:2045或John,这给了我一切。我只想搜索年份或名称。我已经将其作为特定属性的名称:
$name = $_POST["name"];
$sql="SELECT id, name, city FROM student WHERE name LIKE '".$name."%'";
但是我想要的是MATCH AGAINST查询。我不知道该怎么办...这就是我所拥有的:
$sql ="SELECT id, name, city FROM student WHERE MATCH(id, name, city) AGAINST ('".$name."%')";
在这里,我希望我的$ name是我在搜索栏中写的随机名称。 谢谢
答案 0 :(得分:0)
您是否有没有将LIKE
与OR
乘以乘法的特定原因?
$name = $_POST["name"];
$sql="SELECT id, name, city FROM student
WHERE id LIKE '".$name."%'" OR
name LIKE '".$name."%'" OR
city LIKE '".$name."%'";
使用CONCAT()
的另一种方法,
$sql="SELECT id, name, city FROM student WHERE CONCAT(id,name,city) LIKE '".$name."%'";