Допустим, у меня есть таблица 'wp_users
' со следующими данными:
Name user_registered ID
dog 2008-05-14 18:53:30 1
cat 2008-05-14 12:13:20 2
mouse 2008-05-14 08:51:32 3
giraffe 2008-05-15 22:13:31 4
Moose 2008-05-16 13:20:30 5
monkey 2008-05-16 08:51:32 6
mongoose 2008-05-16 22:13:31 7
fish 2008-05-16 13:00:30 8
У меня есть еще одна таблица 'wp_usermeta
', где wp_users.ID == wp_usermeta.user_id
:
user_id meta_key meta_value
1 wp_capabilities a:1:{s:10:"subscriber";s:1:"1";}
2 wp_capabilities a:1:{s:15:"s2member_level2";s:1:"1";}
2 wp_s2member_subscr_id I-SDJKSDD
3 wp_capabilities a:1:{s:15:"s2member_level2";s:1:"1";}
3 wp_s2member_subscr_id I-sdfsdfsdf
4 wp_cabilities a:1:{s:10:"subscriber";s:1:"1";}
5 wp_cabilities a:1:{s:10:"subscriber";s:1:"1";}
6 wp_cabilities a:1:{s:10:"subscriber";s:1:"1";}
7 wp_capabilities a:1:{s:15:"s2member_level2";s:1:"1";}
7 wp_s2member_subscr_id I-sd45gds
8 wp_capabilities a:1:{s:15:"s2member_level2";s:1:"1";}
8 wp_s2member_subscr_id I-3fskkhh
То, что я ищу, - это способ генерации некоторых сводных столбцов, которые подсчитывают количество регистраций подписчиков и регистраций s2member_level2 для каждого дня wp_users.user_registered
даты (меня не интересует час дня, просто дата ). Чтобы определить их немного лучше:
"subscriber
": НЕ будет строки, в которой meta_key = wp_s2member_subscr_id
- она просто не существует. Обратите внимание, что пользователи 1,4,5 и 6 не имеют этой строки, поэтому они являются «подписчиками». Также в строке «wp_capabilities
» вместо «s2member_level2
» будет указано слово «subscriber
». Оба критерия НЕ ДОЛЖНЫ выполняться, потому что они верны для всех подписчиков (я упоминаю оба в случае, если один легче проверить, чем другой).
"s2member_level2
": есть строка, где meta_key = wp_s2member_subscr_id
с некоторыми случайными буквенными значениями (пользователи 2,3,7,8 в таблицах выше). Он также будет иметь слово "s2member_level2
" в значении для meta_value
. Оба критерия НЕ ДОЛЖНЫ выполняться, потому что оба они верны для всех s2member_level2 (я упоминаю оба в случае, если один легче проверить, чем другой).
Идеальный результат будет выглядеть следующим образом для приведенных выше таблиц:
Date subscriber s2member_level2
2008-05-14 1 2
2008-05-15 1 0
2008-05-16 2 2
Это более сложный вопрос вопроса (и ответа), найденного здесь , который только что искал общее количество подписчиков любого вида. Это стремится дифференцировать подписчиков от s2member_level2. Я предполагаю, что это можно сделать с помощью некоторых необычных операторов объединения и буду признателен за любую помощь!