Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Доброй ночи есть запрос Код: plsql 1. 2. 3. 4. 5. 6. как его можно переделать так чтоб не нужно было указывать каждое мета поле по имени примерно вот так Код: sql 1. 2. 3. или есть другой способ получить в одну выборку данные самого юзера и мета полей (хочется большего - получать и users_relationships из которого моно получить родителя и департамент, но до этого далеко) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2017, 21:50 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Валодяесть запрос Бредовый запрос. Выборка из users_meta никак не зависит от требуемого users.id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2017, 23:32 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
плохо описал есть юзеры с id и есть меты с user_id (object_id), меты выбираем по user.id = meta.object_id проблема в том что меты могут дублироваться по meta.meta_name и нужно получить последнюю сортируя по meta.id DESC и беря только последнюю и нужно взять все уникальные - тоесть могут быть записи а могут и не быть meta.meta_name : страна последний ip город последний ip город последний ip их разное количестко и разное количество дублей можно так Код: sql 1. + Код: sql 1. но полученные данные нужно обрабатывать и складывать в массив вручную - хочется сразу получить 1 массив вида Код: php 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 00:09 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Akina, извиняюсь - запрос в вопросе был такой Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 00:13 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Стандартный подход - JOIN нескольких копий таблицы с метаданными: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Для метаданных, наличие которых гарантируется, используется обычный (INNER) JOIN, для метаданных, которых в таблице может не быть - LEFT JOIN. Сортировка и лимитирование - по вкусу. Опять же только для метаданных, которые могут дублироваться (что в общем странно). Сами необязательные метаданные можно обернуть в COALESCE, чтобы для отсутствующих вместо NULL получать вменяемую текстовку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 07:44 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Akina, в том то и дело что мы не знаем есть там данные или нет, поэтому неможем перечислить их тк позже могут появиться новые и нужно каждый раз в запрос будет добавлять новое mena_name дублирование например ведётся для записи 3х последних ip в мета я пишу кто создал и когда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 10:44 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Валодямы не знаем есть там данные или нет, поэтому неможем перечислить их тк позже могут появиться новые и нужно каждый раз в запрос будет добавлять новое mena_nameТогда динамический SQL. Хотя разработчик-то знает, чего он напихал в софт, верно? не может же у него клиент отражать параметр, о котором код знать не знает? либо он его точно так же будет отображать динамически... а коли клиенту можно, то и серверу не стыдно. В любом случае такой подход лучше, чем пачка коррелированных подзапросов. Тебя спасает только то, что в твоём запросе получаются данные исключительно по одному users.id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 11:04 |
|
||
|
Как сгрупировать данные 2х таблиц, когда из одной нужна одна строка, а из другой все
|
|||
|---|---|---|---|
|
#18+
Akina, а варианты с while никак не подходят? Код: sql 1. 2. 3. 4. 5. 6. 7. синтаксис вписал от php и показал логику запроса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2017, 11:27 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39530167&tid=1830380]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 243ms |
| total: | 356ms |

| 0 / 0 |
