我需要在php和oci中使用这些术语的前缀进行搜索,例如:
如果用户键入 bud ,则结果必须包含数据库中包含bud作为名称一部分的所有行。对于确切的术语,我的搜索功能正常:
function get_station_by_name($conn, $name, $skip = 0, $maxrows = -1){
$statement = db_create_statement($conn, "SELECT id, name, city, avg_pass, min_pass FROM station WHERE name = :name");
db_bind($statement, ':name', $name);
return db_fetch_resultset($statement, $skip, $maxrows);
}
function db_bind($statement, $name, $value) {
return oci_bind_by_name($statement, $name, $value);
}
我经常搜索如何做到这一点,但我找不到很好的结果。 我想我必须在我的$ name中加入变量符号,如%,*。
非常感谢
答案 0 :(得分:0)
$name = "bud";
$statement = "SELECT id, name, city, avg_pass, min_pass FROM station WHERE name LIKE :name";
db_bind($statement, ':name', "%" . $name . "%");
查找名称中包含“bud”的电台 例如,buddingham或debudding