如何在wordpress用户元数据中使用mysql select查询并从其他表中左连接?

toiithl6  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(258)

我需要得到用户计数,如果他是活跃的。
我有两张table:
用户
wp\u用户\u元
在一个 wp_user_meta 表中用户的一些详细信息是以串行形式存储的 active_status 是。
如何编写查询来获取具有上述条件的用户计数
我用wordpress方法获取用户meta
比如:

$user_meta = get_user_meta( 98 );

$all=$user_meta['coupon_user_meta'][0];

$unser=unserialize($all);

print_r($unser);

输出为

Array ( [active_status] => active [subscribe] => yes [avatar] => [confirmation_hash] => )

如何编写查询?
谢谢大家最后我硬编码了一些。它对我有用。请检查此代码。

$data = array();
$results = $wpdb->get_results("SELECT * FROM wp_users");

if(!empty($results)){

    foreach($results as $row){
        $person_id= $row->ID;
        $data[] = person_id;
    }
}
$num=0;
$check=$meta=$unserial=NULL;
foreach($data as $user){

    $check=get_user_meta($user);
    $meta=$check['coupon_user_meta'][0];

$unserial=unserialize($meta);

$co=$unserial['active_status'];

    if($co=="active"){
        $num++;

    }

}
echo $num;
af7jpaap

af7jpaap1#

试一试:

select sum(um.meta_value = '1') Sex1, sum(um.meta_value = '2') Sex2
from wp_usermeta um
join wp_users u on u.id = um.user_id
where um.meta_value = 1
group by date(u.user_registered)

谢谢!!

xxslljrj

xxslljrj2#

尝试使用此代码。

<?php
$allusers = get_users( $args = array() );
foreach ( $allusers as $user ) {
   if($user->active_status == 'active'){
    $active_user[] = $user->active_status;
   }
}

$count = sizeof($active_user);
?>

相关问题