Задавайте вопросы, мы ответим
Вы не зашли.
Есть БД Zadanie с таблицей task, содержащей поля:
id_task, имя, доход, расход.
Содержимое таблицы:
имя доход расход
Вася 122 444
Петя 43 5553
Маша 777 423
Женя 1299 122
Вася 973 334
Как можно вывести содержимое в следующем виде:
имя доход расход доход расход
Вася 122 444 973 334
Петя 43 5553
Маша 777 423
Женя 1299 122
Неактивен
Правильный ответ — никак. Ну то есть в данном конкретном случае можно, но
когда у Васи появится третья строчка, то прийдется переписывать запрос, т.е.
универсально сделать не получится.
Более интересный вопрос — зачем это нужно выводить так? Самый близкий
переносимый вариант:
Неактивен
А если таблицу разделить на две
task:
id_task, имя
money:
id_task, доход, расход, id_money
Неактивен
А в чем, собственно, вопрос?
Проблема не в количестве таблиц, проблема в динамическом количестве колонок,
которое Вы хотите на выходе. Зачем Вам такое?
Неактивен
А чего вы этим добьетесь?
В части перечисления полей запроса SELECT имена колонок и их кол-во, должно быть фиксированно до выполнения запроса. Т.е. в зависимости от того сколько раз у вас совпадают имена должны быть разные запросы.
Так что пользуйтесь функцией group_concat() и обрабатывайте полученный результат во внешнем приложении.
P.S. Второй раз опоздал с ответом
Неактивен
У меня, наверное, оповещение о почте приходит чуть раньше
Неактивен
Требую отмены дискриминации по цветовому признаку штанов, тфу.. используемому почтовому серверу.
Неактивен
Спасибо за советы и скорость ответов
Неактивен