![]() |
|
Модераторы: skyboy |
![]()
|
|
| maxipub |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: 1 Всего: 1 |
Добрый день!
Есть таблицы:
Нужно q_data отсортировать по q_sort.sort для user_id. Делаю так:
Но что-то результат не радует...
Когда жду такого:
Что не так делаю? |
||||||||
|
|||||||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 2 Всего: 386 |
Дело в том, что ON s.user_id=d.user_id
user_id в предложенных данных только 1, совсем 1... -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| igorold |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 22.12.2005 Где: Россия->Урал-& gt;Миасс Репутация: 5 Всего: 17 |
Почему у вас user_id везде одинаковый =1 ?
Из-за этого так и получается. -------------------- ... у семи нянек 14 сисек ... Putin here, Putin there, Putin almost everywhere! |
|||
|
||||
| maxipub |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: 1 Всего: 1 |
ksnk, это в предложенных данных. В реальности юзер не один.
Добавлено через 45 секунд igorold, юзер одинаковый потому, что это записи одного юзера. |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 2 Всего: 386 |
ON (s.id=d.id and s.user_id=d.user_id)
Может так? -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| igorold |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 22.12.2005 Где: Россия->Урал-& gt;Миасс Репутация: 5 Всего: 17 |
Почему группировка по id???
-------------------- ... у семи нянек 14 сисек ... Putin here, Putin there, Putin almost everywhere! |
|||
|
||||
| maxipub |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: 1 Всего: 1 |
Блин, сорри. Там большой запрос, и эта часть в нем не получается. Чтобы не отвлекать, решил выделить ее. Но сделал это не корректно, там чуть другая структура получается. Сейчас постараюсь переделать.
|
|||
|
||||
| igorold |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 22.12.2005 Где: Россия->Урал-& gt;Миасс Репутация: 5 Всего: 17 |
так видно, что что-то не так ... -------------------- ... у семи нянек 14 сисек ... Putin here, Putin there, Putin almost everywhere! |
|||
|
||||
| maxipub |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: 1 Всего: 1 |
Итак, еще раз сорри, попытка №2
Задача: выбрать из w_data данные для указанных user_id и some_id, с сортировкой по w_sort.sort делаю так:
Получаю:
Вместо ожидаемых:
Где я туплю уже второй час??? |
||||||||
|
|||||||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 2 Всего: 386 |
Тут left join, чтобы при отсутствии записи о сортировке в таблице w_sort, данные не пропали. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
maxipub, ты сперва без сортировки составь запрос - просто чтобы получить правильные данные, в т.ч. в поле сортировки. А то у тебя и во второй раз хрень какая-то... тем более что группировка у тебя совсем "ниачём".
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| maxipub |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: 1 Всего: 1 |
Без сортировки? Не совсем понял, при чем она тут. Сортировка ведь влияет лишь на порядок следования того, что уже выбрано? А если выбрано уже не то, то и сортировка непонятно каким боком, она же сам набор данных не меняет? Вот выбираем что нам надо:
Далее джойнил таблицу для сортировки:
Тут мы получали пересечение всех строк... Кароче, я уже понял что тупанул с этим. Нужно было использовать все точки соприкосновения для ON... При еще пришлось на реальном запросе немного потупить - там на самом деле не 3 такие id, а 4, и нужно джойнить по всем 4 чтоб не происходило пересечения, а я чето тупанул и уперся в эту группировку, понимая что она все равно проблемы не решит.... |
||||||
|
|||||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |