已关闭。此问题需要details or clarity。目前不接受回答。
**要改进此问题吗?**通过editing this post添加详细信息并阐明问题。
16天前关闭
这篇文章是编辑并提交审查16天前.
Improve this question
不使用WordPress或编写基于WordPress的插件,我希望能够从WordPress的数据库表中获取数据,并插入到它。我将编写的代码在任何程序或面向对象程序,但它肯定是WordPress框架之外。
现在,我可以从wp_users
表中获取数据,但尝试将wp_users
与wp_usermeta
连接不正确。我想在usermeta表中显示与特定用户相关的数据,但由于wp_usermeta
表使用meta_key
和meta_value
来保存这些数据,因此获取数据有点困难。当表列是Meta_key和meta_value时,如何获取用户的first_name和last_name?
当前查询:
SELECT a.*, b1.meta_value AS first_name, b1.*, b2.meta_value AS last_name, b2.*
FROM wp_users a
INNER JOIN wp_usermeta b1 ON b1.user_id = a.ID AND b1.meta_key = 'first_name'
INNER JOIN wp_usermeta b2 ON b2.user_id = a.ID AND b2.meta_key = 'last_name'
WHERE (b1.meta_value LIKE '%_%' OR b2.meta_value LIKE '%_%' OR a.user_email LIKE '%_%')
字符串
循环:
<tr>
<td><?= $row['ID']; ?></td>
<td><?= $row['user_login']; ?></td>
<td><?= $row['user_email']; ?></td>
<td><?= $row['first_name']; ?></td>
<td><?= $row['last_name']; ?></td>
<td><?= $row['phone']; ?></td>
<td>
<?php
if ( $row['user_id_verified'] == 1 ){
echo "Yes";
} else {
echo "No";
}
?>
</td>
<td><?= date('M j, Y h:i A', strtotime($row['user_registered'])); ?></td>
</tr>
型
输出:
我试过使用INNER JOIN,但结果不正确。我可能只是在下一个用户之前的两个页面上(表分页)有一个特定的用户。
我想每个用户的数据都在同一行,这也将有助于以后的更新。
2条答案
按热度按时间1dkrff031#
假设你有一个用户ID,你想检索该用户的first_name和last_name,你可以使用如下查询:
字符串
**获取用户的所有信息:**假设您有一个用户ID,并且您希望检索以下详细信息:
您可以像下面这样使用此更新的查询:
型
**注意:*将 ':user_id'替换为您要获取数据的实际用户ID。此外,请确保您在查询中使用了正确的表前缀,因为它可能会因您的WordPress安装而异。
1hdlvixo2#
要从WordPress数据库表
wp_users
和wp_usermeta
中为用户获取first_name
和last_name
,您需要执行正确连接这些表的SQL查询。由于wp_usermeta
表使用meta_key
和meta_value
列存储用户元数据,您需要使用条件连接来获取与特定用户相关的first_name
和last_name
的特定meta_value
。这里有一个例子,你可以如何实现这一点:
字符串
说明:
1.我们从
wp_users
表(u
)开始,使用LEFT JOIN将其与wp_usermeta
表(um1
)连接,并使用user_id
作为公共字段。1.在SELECT语句中,我们使用条件聚合(MAX with CASE语句)来获取
meta_key
的first_name
和last_name
的meta_value
。1.我们使用一个WHERE子句来过滤
wp_usermeta
中的行,其中meta_key
是'first_name'或'last_name'。1.最后,我们从
wp_users
表中GROUP BYID
和user_login
,以确保每个用户的数据都在同一行上。此查询将返回一个结果集,每个用户对应一行,其
first_name
和last_name
显示为单独的列。您可以在PHP代码(过程或OOP)中使用此SQL查询从WordPress数据库获取数据,而无需依赖WordPress框架。