Имеется SQL запрос который отдает:
ID_CLIENT | FIO | DATA_ZAKAZ | COL_VO
-----------------------------------------------
1 | Петров Сергей | 2018-04-12 | 4
2 | Антонов Виктор | 2018-04-12 | 2
2 | Антонов Виктор | 2018-04-09 | 1
Как в PHP сделать так, чтобы появилась таблица:
Фамилия ИО | 2018-04-12 | 2018-04-09
Петров Сергей | 4 заказа | 0 заказов
Антонов Виктор | 2 заказа | 1 заказ
т.е. сделать, чтобы ФИО не повторялось, а распределялось по датам?
SQL может отдавать одинаковую дату например как(2018-04-12): Но разных клиентов.
Как сделать вывод в таком виде: вывод чтобы был в таком виде:
Фамилия ИО | 2018-04-12 | 2018-04-09
Петров Сергей | 4 заказа | 0 заказов
Антонов Виктор | 2 заказа | 1 заказ
Как для примера с использованием динамического скрипта (без PIVOT)
-- Первоначальная база
create table #DATA (
ID_CLIENT int not null,
FIO varchar(255) not null,
DATA_ZAKAZ date not null,
COL_VO int not null default 0
);
-- Добавляем данные
insert into #DATA
values (1, 'FIO 1', '2018-04-12', 4),
(2, 'FIO 2', '2018-04-12', 2),
(2, 'FIO 2', '2018-04-09', 1)
;
-- Выдибраем уникальные даты и проставлям порядковый номер
select distinct
DATA_ZAKAZ,
dense_rank() over(order by DATA_ZAKAZ desc) as "NUM"
into #DATES
from #DATA
order by 1 desc
;
-- временные парметры для динамического скрипта
declare @num int = 1, -- для цикла
@qty_dates int = 0, -- кол-во дат в выборке
@date varchar(255), -- дата как строка (для цикла)
@scr varchar(max) = 'select FIO' -- скрипт
;
-- узнаём кол-во дат
select @qty_dates = count(*)
from #DATES
;
-- Перебираем все даты из таблицы и создаём динамический скрипт
while (@num <= @qty_dates)
begin
select @date = replace(convert(varchar, DATA_ZAKAZ, 102), '.', '-')
from #DATES
where NUM = @num
select @scr = concat(@scr, ',isnull(sum(case when DATA_ZAKAZ = ''', @date, ''' then COL_VO end),0) as "', @date , '"')
select @num = @num + 1
end
-- Добавляем концовку в скрипт
select @scr = concat(@scr, ' from #DATA group by FIO');
-- выполняем скрипт
execute (@scr)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
есть лист задача на PHP + phpMyAdmin, по коду всё вроде правильно, не выбивает никакой ошибки, но не задания не добавляются в сам лист и БДВот код,...
Более теоретический вопросХочу сделать на сайте так, чтобы при получении нового личного сообщения сразу же приходило оповещение в браузер...
Подскажите, я ищу конкретную запись в laravel: Information::where("url",$url)->first(); (связь belongsTo) И пытаюсь таким образом обратиться к родтаблице:
Как поменять местами в каталоге символ и цену, чтобы символ был после цены? Это не в карточке товара, а в общем каталоге