Size: a a a

2020 July 24

S

Sergey in MySQL
спасибо. а если у меня неопределенное количество строк и надо каждую обработать?
источник

DE

Denis Efremov in MySQL
Возьмите подходящий инструмент
источник

DE

Denis Efremov in MySQL
Зачем так делать? Какой смысл в этом?
источник

S

Sergey in MySQL
задача такая. есть данные в базе, которые надо отдавать клиенту по SQL запросу, но приводя в нужный формат.
очевидное решение: прогонять эти данные через скрипт, который будет генерировать строки в нужном формате и записывать в отдельную таблицу.
но данных и их вариаций очень много, чтобы хранить их, по сути дублируя. поэтому и задумался о том, чтобы отформатировать выдачу на стороне базы.
источник

S

Sergey in MySQL
вижу еще вариант — какой-то демон, проксирующий SQL-запросы и обрабатывающий ответы от мускула. но это даже в теории сложно звучит...
источник

DE

Denis Efremov in MySQL
Это звучит как бред. Если клиенту нужен такой формат то зачем их хранить в ином формате?
источник

S

Sergey in MySQL
потому что они уже хранятся в другом формате и занимают при этом в несколько раз меньше места, чем в требуемом по задаче формате
источник

DE

Denis Efremov in MySQL
Одни и те же данные занимают меньший объём при записи в строку нежели в столбик?
источник

S

Sergey in MySQL
пример упрощен. там еще много столбцов с идентичными данными копируется из исходной таблицы в каждую строку новой.
источник

DE

Denis Efremov in MySQL
Не понятно
источник

DE

Denis Efremov in MySQL
Покажите пример
источник

S

Sergey in MySQL
исходная
id | d1 | d2 | d3 | aa  | bb  | cc 
------------------------------------
1  | a1 | b1 | c1 | aa1 | bb1 | cc1
2  | a2 | b2 | c2 | aa2 | bb2 | cc2


выдача:
id | d  | aa  | bb  | cc 
-------------------------
1  | a1 | aa1 | bb1 | cc1
1  | b1 | aa1 | bb1 | cc1
1  | c1 | aa1 | bb1 | cc1
2  | a2 | aa2 | bb2 | cc2
2  | b2 | aa2 | bb2 | cc2
2  | c2 | aa2 | bb2 | cc2
источник

DE

Denis Efremov in MySQL
Покажите реальный пример
источник

DE

Denis Efremov in MySQL
Это выглядит бредово и не понятно зачем так делать
источник

DE

Denis Efremov in MySQL
И не очевиден алгоритм
источник

DE

Denis Efremov in MySQL
Почему строк с id 1 в выдаче не 6?
источник

DE

Denis Efremov in MySQL
Чем аа отличается от d3?
источник

S

Sergey in MySQL
Denis Efremov
Почему строк с id 1 в выдаче не 6?
потому что декомпозировать строку надо по столбцам d1 | d2 | d3, остальные данные копируя из исходной таблицы
источник

DE

Denis Efremov in MySQL
Зачем? Какая проблема этим решается?
источник

S

Sergey in MySQL
проблема бизнеса. надо выдавать данные в таком формате. что там с этими данными будут делать, я не знаю. у меня есть задача и я хочу понять, можно ли ее решить SQL-запросом.
источник