【发布时间】:2013-12-14 04:16:55
【问题描述】:
我需要在同一个字段中搜索两个值。
╔════╦════════════╦══════════════╗
║ ID ║ Meta_key ║ Meta_value ║
╠════╬════════════╬══════════════╣
║ 1 ║ first_name ║ pritesh ║
║ 2 ║ last_name ║ mahajan ║
║ 3 ║ first_name ║ ritesh ║
║ 4 ║ last_name ║ jain ║
║ 5 ║ first_name ║ john ║
║ 6 ║ last_name ║ a ║
║ 7 ║ first_name ║ Mambo ║
║ 8 ║ last_name ║ Nombo ║
╚════╩════════════╩══════════════╝
这是我的表,我想搜索所有的名字和姓氏。下面是我的查询,但这并没有返回我想要的。
SELECT *
FROM `wp_usermeta`
WHERE `meta_key` = 'last_name'
AND `meta_value` LIKE '%mahajan%'
AND `meta_key` = 'first_name'
AND `meta_value` LIKE '%a%';
【问题讨论】:
-
您有多个名字和姓氏,但一个人的名字和姓氏如何联系起来?
-
查询无法工作,因为您正在搜索列
Meta_Key的值first_name和last_name同时存在的行.它看起来像一个格式不正确的表结构,因为名字和姓氏没有相互关联。 -
是的,如果可能的话,请检查 Wordpress 用户元表。
-
我认为这张表设计错误。
-
在不知道 WP 的表结构如何的情况下,我认为必须有一个表从您的问题中引用元表。你应该用它来连接名字和姓氏。