Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Запрос к базе


Автор: Varlenka 28.10.2003, 15:56
Помощь нужна,очень!

Вот есть у меня этот массив 'Mon','Tue','Wed','Thu','Fri'

Запросом к базе получаю выборку из этого массива при определенных условиях и одного пользователя, ну примерно так
Код
mysql_query("select day_ from my_table where...")


И мне надо найти теперь при каких днях из предыдущей выборки, кол-во остальных пользователей наибольшее


Спасиба! confused.gif

Автор: wertyman 28.10.2003, 16:25
немного канечно не понятно и неточно ты изложил вопрос, так что не судить, если ошибусь в своем ответе!
Код

$days = array('Mon','Tue','Wed','Thu','Fri'); // Допустим, это твой массив.
$counts = array('Mon' => 0,
'Tue' => 0,
 'Wed' => 0,
 'Thu' => 0,
 'Fri' => 0); // А это будет массив посещений.
while($row = mysql_fetch_row($result)) foreach($days as $day) if($row['day_'] == $day) $counts[$row['day_']]++;

хех.. надеюсь сработает! ;)
потом, короче из массива $counts можешь получить кол-во посещений за какой то день!
если я не так понял, скажи !

Автор: Varlenka 28.10.2003, 16:37
wertyman,наверное, ты не так понял, но это моя ошибка.

Есть таблица, там дни и промежутки времени, и проставлено 1 или 0.
Один user[$user] хочет найти при каких днях и в какие промежутки часов у большинства пользователей стоит 0. Это все понятно
Код
select day,hour,count(*) as num from my_table where
           d='0' group by day,hour order by num desc limit 1


Правильно? Но при всем этом мне надо как-то учесть, что поиск надо проводить по тем юзерам, у кого user_id!='$user' и только по тем дням и промежуткам, когда у $user'a d='0'

Вот это я и не понимаю как сделать... У меня MySql 3.23.58 - там еще нет подзапросов

Автор: wertyman 28.10.2003, 17:03
ну просто добавь к запросу AND типа WHERE d='0' AND user_id = '$user_id'

Автор: Varlenka 28.10.2003, 17:13
Цитата
ну просто добавь к запросу AND типа WHERE d='0' AND user_id = '$user_id'


так мне как раз и нужно искать по тем юзерам, у кого user_id не равен $user[user_id]

Автор: IZ@TOP 28.10.2003, 17:59
В таком случае -
Код

WHERE d='0' AND user_id != '$user_id'

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)