【发布时间】:2017-05-13 17:43:32
【问题描述】:
此 SQL 查询当前返回所有包含单词的值。例如,键入 Mon 将返回 Armoring、Behemoth、Emotion 等。我希望它返回以该值开头的单词,例如 Monkey、Moment、Monday 等。
希望我的解释有意义,代码如下。
function action_ajax_drug_suggest() {
global $wpdb;
if ( empty( $_GET['term'] ) ) {
die();
}
$drug_name = $wpdb->esc_like( $_GET['term'] );
$table = $wpdb->prefix . self::TABLE_DRUG;
$posts = $wpdb->get_results( $wpdb->prepare( "
SELECT name
FROM {$table}
WHERE name LIKE '%%%s%%'
AND details <> ''
LIMIT 5",
$drug_name ) );
foreach( $posts as $post ) {
$names[] = array(
'label' => $post->name,
);
}
wp_send_json( $names );
}
【问题讨论】:
-
所以从
LIKE中删除前导%%。 -
试过了,我得到一个空响应。
标签: sql search autocomplete wildcard