У меня есть таблица aa ptb_profile_views;
id | profile_id | viewed_profile | date 1 1 5 2 1 5 3 1 5 4 2 5 5 3 5
нормально, поэтому в этом примере пользователи 1,2 ans 3 проверяют профиль пользователя 5,
mysql, который я получил здесь, должен посчитать количество просмотров, которые пользователь получил, но где пользователь 1 несколько раз проверил пользователя 5, я не хочу возвращать повторяющиеся строки,
поэтому вместо того, чтобы говорить, что пользователь 5 просмотрен 5 раз, они будут фактически просмотрены только 3 раза, потому что я хочу только подсчитать разные значения.
heres мой mysql может кто-то, пожалуйста, помогите мне:
function check_profile_views() { global $connection; global $_SESSION; $query = "SELECT COUNT(profile_id) FROM ptb_profile_views WHERE viewed_profile_id=".$_SESSION['user_id']." AND profile_id!='0'"; $check_profile_views_set = mysql_query($query, $connection); confirm_query($check_profile_views_set); return $check_profile_views_set; }
php:
$check_profile_views_set = check_profile_views(); while ($views = mysql_fetch_array($check_profile_views_set)) { ?> <? echo"". $views['COUNT(profile_id)'] ."";?> viewed your profile
просто добавьте DISTINCT
SELECT COUNT(DISTINCT profile_id) totalCOUNT FROM ptb_profile_views...
и эхо-псевдоним,
$views['totalCOUNT']