@dba_ru

Страница 592 из 718
Terminator
01.08.2018
20:45:00
@meatr будет жить. Поприветствуем!

Nikita
02.08.2018
11:10:17
Всем привет! А я тут опять херни принес. CREATE TEMPORARY TABLE orders_mobile ( city VARCHAR(64), order_count int, order_avg float, order_date VARCHAR(100) ); insert into orders_mobile SELECT cs.name, count(sfo.entity_id), avg(sfo.base_grand_total), date_format(sfo.created_at, @date_format) FROM sales_flat_order sfo JOIN core_store cs on sfo.store_id = cs.store_id WHERE sfo.status IN ('reserved', 'complete', 'collect') AND sfo.created_at BETWEEN date_sub(curdate(), INTERVAL 15 WEEK) AND curdate() AND sfo.app_source in (@android, @ios) GROUP BY cs.name, week(sfo.created_at); SELECT city as 'Город', MAX(IF(order_date = date_format(date_sub(curdate(), INTERVAL 1 WEEK), @date_format) , order_count, 0)) as '30.07.2018', MAX(IF(order_date = date_format(date_sub(curdate(), INTERVAL 2 WEEK), @date_format) , order_count, 0)) as '23.07.2018' . . . FROM orders_mobile GROUP BY city; Вообщем пытаюсь достатть количество заказов понедельно.

Как это сделать правильно?

Ilia
02.08.2018
11:15:54
'23.07.2018' -- очень оригинальное имя поля!

Google
Ilia
02.08.2018
11:16:00
ТАк держать!

Виктор
02.08.2018
11:23:25
Ilia
02.08.2018
11:26:44
lost
02.08.2018
11:31:14
Ну немного не по анси

Опять бурчать будешь?

Ilia
02.08.2018
11:33:12
Нельзя быть немного не по анси. Как нельзя немного быть беременной. Или по анси, или не по анси. Проблема-то , что нормальная СУБД его просто на йух пошлёт, а кривая типа Мускля просто выдаст херь какую-то в виде данных.

Anton
02.08.2018
11:49:08
Ну вот что ты обманываешь?)

Мускуль тоже пошлёт, если не выкрутить специальную настроечку под это

Ilia
02.08.2018
11:51:11
Чёта она никогда не выкручена по факту...

Anton
02.08.2018
11:51:34
по дефолту включена уже несколько лет

Vladislav
02.08.2018
11:54:58
Проблема апгрейдов

Конфиг то десятилетний может быть...

Google
Anton
02.08.2018
11:55:35
И легаси тоже. Что хуже конфига)

Vladislav
02.08.2018
11:55:47
Причем тут легаси

Anton
02.08.2018
11:56:03
ну, не включишь ты мод, если у тебя уже по-старому тьма всего написана

Vladislav
02.08.2018
11:56:24
Причем тут это

Я тебе про то, что изменение дефолтных настроек меняется только при новой установке, либо если в ПО она есть по дефолту в обход конфига, обычно, в таких конфигах все закамментировано

Если же в конфиге это прописано сегодня true, то завтра после апгрейда, с вероятностью 99%, оно останется true, хоть дефолтное значение и стало false

Nikita
02.08.2018
12:08:51
@MasterZiv Во, а как групернуть по феншую? Ну и нормально ли я делаю "транспонирование" по этим самым неделям?

Ilia
02.08.2018
12:10:06
Nikita
02.08.2018
12:14:54
@MasterZiv а транспониую я тогда так, верно? SELECT city as 'Город Desctop', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 1 WEEK)) , order_count, 0)) as '30.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 2 WEEK)) , order_count, 0)) as '23.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 3 WEEK)) , order_count, 0)) as '16.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 4 WEEK)) , order_count, 0)) as '09.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 5 WEEK)) , order_count, 0)) as '02.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 6 WEEK)) , order_count, 0)) as '25.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 7 WEEK)) , order_count, 0)) as '18.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 8 WEEK)) , order_count, 0)) as '11.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 9 WEEK)) , order_count, 0)) as '04.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 10 WEEK)), order_count, 0)) as '28.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 11 WEEK)), order_count, 0)) as '21.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 12 WEEK)), order_count, 0)) as '14.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 13 WEEK)), order_count, 0)) as '07.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 14 WEEK)), order_count, 0)) as '30.04.2018' FROM orders_desktop GROUP BY city;

Ilia
02.08.2018
12:15:38
@MasterZiv а транспониую я тогда так, верно? SELECT city as 'Город Desctop', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 1 WEEK)) , order_count, 0)) as '30.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 2 WEEK)) , order_count, 0)) as '23.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 3 WEEK)) , order_count, 0)) as '16.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 4 WEEK)) , order_count, 0)) as '09.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 5 WEEK)) , order_count, 0)) as '02.07.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 6 WEEK)) , order_count, 0)) as '25.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 7 WEEK)) , order_count, 0)) as '18.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 8 WEEK)) , order_count, 0)) as '11.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 9 WEEK)) , order_count, 0)) as '04.06.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 10 WEEK)), order_count, 0)) as '28.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 11 WEEK)), order_count, 0)) as '21.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 12 WEEK)), order_count, 0)) as '14.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 13 WEEK)), order_count, 0)) as '07.05.2018', MAX(IF(order_date = week(date_sub(curdate(), INTERVAL 14 WEEK)), order_count, 0)) as '30.04.2018' FROM orders_desktop GROUP BY city;
Делай на клиенте

Nikita
02.08.2018
12:15:55
@MasterZiv Нету пока клиента Т_Т

я его еще дня три, четыре дописывать буду. А отчет горит.

Ilia
02.08.2018
12:16:35
Тем лучше... Его можно сделать так, чтобы транспонирование вообще не нужно было... Поверни дисплей на 90 градусов -- и ок

Nikita
02.08.2018
12:16:47
Вот и приходится насиловать SQL

@MasterZiv Во, слушай, идильный вариант :D Глядишь тогда за день напишу

Vladislav
02.08.2018
12:53:33
https://sqream.com/

Роман
02.08.2018
13:37:20
Всем привет, по FireBird подскажет кто? суть: были базы на одном сервере, переехали на другой, в цоде, в разы мощнее. Может можно как то настройки firebird подкрутить чтобы из прироста мощностей сервака максимум кпд выжать, по сравнению с предыдущим?

т.е. есть какие то значимые настройки которые зависят от мощности железа и оптимизация которых может повлиять на производительность?

Ilia
02.08.2018
13:44:35
Количество ядерь подкрутить и память -> в кэш. Если конечно это не автоматом настраивается. Детали не знаю.

ко?TEXHIK
02.08.2018
13:48:10
не помню, задавал ли тут этот вопрос но всё же - postgre 9.6 ведь где-то хранит информацию о текущих транзакциях? Её можно как-то вытащить, зная айди транзакции? Например какие там были запросы или diff? Какую вообще информацию о транзакциях можно вытащить?

Google
Ilia
02.08.2018
13:50:07
WAL

ТРАНЗАКЦИИ != какие были запросы

ТРАНЗАКЦИИ == какие поменялись данные. Было это стало это

ко?TEXHIK
02.08.2018
13:51:04
изменённые данные ~~ запросы

Admin
ERROR: S client not available

Валерия
02.08.2018
13:51:14
неа

ко?TEXHIK
02.08.2018
13:51:28
примерно. по крайней мере апдейтные.

WAL
а он туда пишет до комита или после?

Ilia
02.08.2018
13:52:07
Во время работы транзакции

изменённые данные ~~ запросы
Это что должно значить?

ко?TEXHIK
02.08.2018
13:56:01
Это что должно значить?
ну всмысле что оно даст наводку на запросы

Terminator
02.08.2018
13:56:48
@serg_developer будет жить. Поприветствуем!

ко?TEXHIK
02.08.2018
13:57:33
суть в том, что мне надо понять, какой кусок грёбаной приложухи дерджит транзакцию в идле на протяжении 6 часов

Ilia
02.08.2018
13:57:33
ну всмысле что оно даст наводку на запросы
Нет. Запрос update theTable set id = 0 where 1 = 2не изменит ничего. Запрос был. Записи в лог не было.

Так всё же светится... Локи с БД посмотри в таблицах системного каталога. Потом увидишь, что этот процесс делал.

ко?TEXHIK
02.08.2018
13:59:27
м... по заблокированным данным вычислять всмысле?

Farid
02.08.2018
14:18:58
Может кому надо

Собеседование Часть1

ко?TEXHIK
02.08.2018
14:19:08
Так всё же светится... Локи с БД посмотри в таблицах системного каталога. Потом увидишь, что этот процесс делал.
чёт нифига не светится. последний запрос в транзакции был селект, который ни о чём не скажет ибо он повсеместно вызывается.

Google
Ilia
02.08.2018
14:19:37
Отруби его, сразу прибегут, чья была транзакция...

:-)

ко?TEXHIK
02.08.2018
14:20:04
ага, щаз. уже пробовал.

лог молчит, никаких ошибок

я вот чую какой-то уродец забыл закрыть её и она просто где-то утекла

Страница 592 из 718