Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите с многотабличным запросом / 8 сообщений из 8, страница 1 из 1
11.10.2005, 23:04:30
    #33318563
vvovan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
Сначала о том, что есть:
есть 2 таблицы:
1-я visitsnew, поля: ID , PartnerID , IP , EnterDate
2-я ips с одним полем IP
пытаюсь сделать партнерскую программу. В таблице visitsnew фиксируются новые переходы на сайт (ID - PK, PartnerID - ID партнера, от которого пришел человек, IP - IP посетителя, EnterDate - дата входа на сайт)
В таблице ips хранятся IP-шники, которые не нужно учитывать

Нужно выбрать из таблицы visitsnew все поля, с условием, что для каждого ip должна выбраться одна запись - та, у которой поле EnterDate меньше, чем у других.
И еще: не должны выбираться ip, которые есть в таблице ips.
...
Рейтинг: 0 / 0
12.10.2005, 11:16:32
    #33319260
Ivan Evtuhovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
А версия MySQL какая?

Потому что в 4-ой версии появились вложенные подзапросы, используя которые эту задачу решить не составляет никаких проблем. А на 3 - гм, я бы за 2 минуты не придумал

--
С наилучшими пожеланиями,
Иван Евтухович
...
Рейтинг: 0 / 0
12.10.2005, 12:12:46
    #33319519
vvovan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
MySQL 4-ой версии.
...
Рейтинг: 0 / 0
12.10.2005, 12:27:43
    #33319589
Ivan Evtuhovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select *
from
  (select IP, min(EnterDate) as EnterDate
   from
     visitsnew
   where
     IP not in (select ip from ips)
  ) as a join
  visitsnew as b on a.Ip = b.ip and a.EnterDate = b.EnterDate


Возможно, есть какие-то ошибки, но основная идея, думаю, понятна

--
С наилучшими пожеланиями,
Иван Евтухович
...
Рейтинг: 0 / 0
12.10.2005, 17:43:29
    #33320899
vvovan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
идею понял.
большое спасибо!
...
Рейтинг: 0 / 0
12.10.2005, 20:46:32
    #33321247
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
Только следует предупредить, что вложенные подзапросы появились только в ветке 4.1, в 4.0 появились лишь юнионы, из того, что как-то связано с вопросом...
...
Рейтинг: 0 / 0
12.10.2005, 22:59:16
    #33321305
vvovan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
DocAlвложенные подзапросы появились только в ветке 4.1
очень жаль...
наверно придется временные таблицы использовать.
...
Рейтинг: 0 / 0
13.10.2005, 14:05:33
    #33322666
Ivan Evtuhovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с многотабличным запросом
Видать да.

К сожалению, не вспомнил, что 4.0 и 4.1 так сильно отличаются

--
С наилучшими пожеланиями,
Иван Евтухович
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите с многотабличным запросом / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]