- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Допустим есть такие записи
по сути это 3 диалога пользователя ID 1 с тремя пользователями (ID 2,3,4)
как сделать выборка 3 записей, где будет ID от кого, текст последнего (по дате или ID) сообщения
обычный SELECT * FROM `dialog` WHERE (`from_id`=1 OR `to_id`=1) GROUP... некатит, тут надо как-то сгрупировать по ID=1
подскажите как это всё сделать 1 запросом
как это всё сделать 1 запросом
1. зачем самого себя загонять в рамки? 2 запроса - не? В крайнем случае UNION
2. обычный where group катит... с примерно таким извращением
GROUP by IF(from_user=1,to_user,from_user)
Только надо не
а сгруппировать по ID <>1
Спасибо, это помогло
я чтото даже не знал про условия в mysql.... самое интересное в инете вообще условия в sql плохо расписаны (или я плохо искал)
ну тут никак, поля же 2
ну тут никак, поля же 2
Именно это и делается в указанном GROUP BY - выбирается ID<>1 (при этом второй =1, т.к. WHERE) и по нему группируется.
так, а теперь другая проблема....
сортирую ORDER BY `dt` DESC например и получается что он сортирует уже отобранные записи (что тоже кстати надо)
а как в группе отобрать?
т.е. чтото типа MAX(`dt`) только чтобы не только максимальный `dt` а вся запись где максимальный `dt` выбиралась
---------- Добавлено 05.11.2012 в 21:59 ----------
в общем ничего лучше чем выбирать MAX (`id`) и потом для каждой записи выбор по ID