gpt4 book ai didi

MySQL LIKE 运算符的行为类似于 = 运算符

转载 作者:行者123 更新时间:2023-11-29 23:38:57 25 4
gpt4 key购买 nike

看起来 MySQL 的 LIKE 运算符的行为类似于 = 运算符。

以下 MySQL 查询返回预期结果(1 项):

$meta_key = '_locality';
$meta_value = 'The Hague';
$post_ids = $wpdb->get_col( $wpdb->prepare(
"
SELECT post_id
FROM $wpdb->postmeta
WHERE meta_key = %s
AND meta_value LIKE %s
",
$meta_key,
$meta_value
) );

但是以下仅包含原始 meta_value 的一部分,返回一个空数组:

$meta_key = '_locality';
$meta_value = 'The';
$post_ids = $wpdb->get_col( $wpdb->prepare(
"
SELECT post_id
FROM $wpdb->postmeta
WHERE meta_key = %s
AND meta_value LIKE %s
",
$meta_key,
$meta_value
) );

我在这里做错了什么?

最佳答案

请仔细阅读mysql模式匹配语法:http://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html 。您因 LIKE 匹配而丢失 '%':

$meta_key = '_locality';
$meta_value = '%The Hague%';
$post_ids = $wpdb->get_col( $wpdb->prepare(
"
SELECT post_id
FROM $wpdb->postmeta
WHERE meta_key = %s
AND meta_value LIKE %s
",
$meta_key,
$meta_value
) );

关于MySQL LIKE 运算符的行为类似于 = 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26276489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com