Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Час добрый. Прошу не пинать, я не знаю как сформулировать вопрос что задать его гуглу и объяснить поисковику по форуму то, что нужно мне. Спасибо за понимание! В общем, есть 2 таблицы: table 1 id option1 option_12 option_23 option_3 table 2 id field value1 field_1 value_11 field_2 value_22 field_1 value_32 field_2 value_43 field_1 value_53 field_2 value_6 мне необходимо вывести исходную таблицу: result table id option field_1 field_21 option_1value_1value_22 option_2value_3value_43 option_3value_5value_6 Не могу подобрать слова для изложения мысли, в терминологии веник. Да и в целом с SQL только на вы. Спасибо огромное! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 13:08 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Искать по слову PIVOT. Можно просто в этом разделе форума. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 13:39 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 13:42 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
AkinaСм. Сформировать сводную view (phpmyadmin) Помогите повернуть таблицу и т.д. Простите но там вообще не то. И поворачивать ни чего не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 13:51 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
AkinaИскать по слову PIVOT. Можно просто в этом разделе форума. В таблице номер 2 может быть и field_3, field_4, field_n а в пиоте явно указываются значения. Я вижу это так: Выбираем все филды дистинктом и превращаем их в заголовки таблицы, добавляем необходимые заголовки и расставляем значения в соответствии с заголовками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 13:55 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
а зачем вам, собственно, колонки? Вам же наверняка надо готовое значение строкой, чтобы вставить куда-то юзайте group_concat() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:31 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:32 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
tip78 Код: sql 1. 2. нет, к сожалению нужно именно так, как указанно в старте топика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:37 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
tip78а зачем вам, собственно, колонки? Вам же наверняка надо готовое значение строкой, чтобы вставить куда-то юзайте group_concat() Я вот сейчас пачку, кипу примеров просмотрел про PIVOT но ни одного примера с банальным разворотом таблицы без всяких операций. Если вы смогли бы мне развернуть вторую таблицу(без манипуляций со значениями), решение бы само всплыло на поверхность. Вижу это примерно так. SELECT * FROM (SELECT * FROM 'table_2' GROUP BY 'id') PIVOT (??); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:48 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
stweet, потому что не умеет mysql pivot. Выкручиваться можно только зная перечень значений или разворачивать на приложении уже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:00 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
stweettip78а зачем вам, собственно, колонки? Вам же наверняка надо готовое значение строкой, чтобы вставить куда-то юзайте group_concat() Я вот сейчас пачку, кипу примеров просмотрел про PIVOT но ни одного примера с банальным разворотом таблицы без всяких операций. Если вы смогли бы мне развернуть вторую таблицу(без манипуляций со значениями), решение бы само всплыло на поверхность. Вижу это примерно так. SELECT * FROM (SELECT * FROM 'table_2' GROUP BY 'id') PIVOT (??); ну нету у мускуля ни массивов, ни record делайте подзапрос на каждую колонку тогда чё ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:03 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
а, ну да, их же непредсказуемое кол-во... не, вам тут определённо group_concat() зарешал бы вы вообще в курсе, что не обязательно именно в ПХП лопатить результаты, их правильнее как раз в БД сразу в нужный формат приводить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:04 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
stweetИ поворачивать ни чего не надо.Надо, милок, надо. После связывания таблиц ты получишь выборку, которую тебе и надо отпивотить. stweetВ таблице номер 2 может быть и field_3, field_4, field_n а в пиоте явно указываются значения.А вот эти сведения ты напрасно зажал в исходном сообщении - они важны. И именно из-за них данные тебе ссылки неприменимы. MelkijВыкручиваться можно только зная перечень значений Именно по этой причине я написал процедуру. См. PIVOT средствами MySQL . stweet , напрямую моя процедура тут неприменима, ибо работает с одиночной таблицей. Но это можно и поправить, не так ли? скажем, передавая не имя таблицы, а подготовленную секцию FROM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:08 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Melkijstweet, потому что не умеет mysql pivot. Выкручиваться можно только зная перечень значений или разворачивать на приложении уже. Спасибо! Допустим мы знаем перечень значений. Как в таком случае реализовать задачу в старте топика? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:15 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
AkinastweetИ поворачивать ни чего не надо.Надо, милок, надо. После связывания таблиц ты получишь выборку, которую тебе и надо отпивотить. stweetВ таблице номер 2 может быть и field_3, field_4, field_n а в пиоте явно указываются значения.А вот эти сведения ты напрасно зажал в исходном сообщении - они важны. И именно из-за них данные тебе ссылки неприменимы. MelkijВыкручиваться можно только зная перечень значений Именно по этой причине я написал процедуру. См. PIVOT средствами MySQL . stweet , напрямую моя процедура тут неприменима, ибо работает с одиночной таблицей. Но это можно и поправить, не так ли? скажем, передавая не имя таблицы, а подготовленную секцию FROM. Боюсь моя задача ограничена единичным запросом =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:18 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
stweetмоя задача ограничена единичным запросомЗначит, можно из моего кода сформировать процедуру под именно этот запрос. Или единичный - это который один раз запустил, и больше никогда не понадобится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:36 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Akinastweetмоя задача ограничена единичным запросомЗначит, можно из моего кода сформировать процедуру под именно этот запрос. Или единичный - это который один раз запустил, и больше никогда не понадобится? Да я уже таким макаром сделал. А вось прокатит. (Не красиво, но иных условий не было, будем этем и бравировать). select table_1.id, table_1.option, table_2.value as field_1, table_3.value as field_2 from table_1 left join (select id, value from table_2 where field='field_1') as table_2 on table_2.id=table_1.id left join (select id, value from table_2 where field='field_2') as table_3 on table_3.id=table_1.id; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:54 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
stweetя уже таким макаром сделал.Если ЭТОТ запрос тебя устраивает - то те ссылки, что я дал выше, подходят как нельзя лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 17:13 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Akinastweetя уже таким макаром сделал.Если ЭТОТ запрос тебя устраивает - то те ссылки, что я дал выше, подходят как нельзя лучше. Спасибо конечно. Я так далеко в sql не заглядывал. Я там реально не понимаю что к чему?!))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 17:42 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
Чего там понимать-то? группировка да выбор максимума... проще разве что таблица умножения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 18:14 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
AkinaЧего там понимать-то? группировка да выбор максимума... проще разве что таблица умножения. Ну да, согласен. Тут и понимать то нечего. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 19:02 |
|
||
|
Вывод данных из нескольких таблиц определённым образом.
|
|||
|---|---|---|---|
|
#18+
stweet, Вы даже не стесняетесь демонстрировать, что читаете ответы через слово. Ссылк и я давал несколько раньше. И как совершенно иной тип решения, да и в общем другой задачи. Но Вы и их, видимо, тоже смотрели через слово - ведь там ну просто один в один та же задача. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 23:10 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39649905&tid=1829833]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 162ms |

| 0 / 0 |
