@dba_ru

Страница 82 из 718
Sergey
09.01.2017
18:55:13
Зачем тебе годы в отдельной таблице?

В сезон год датой добавляй и все

root
09.01.2017
18:56:35
2 правило нормализации

Чемпионат 2017 Первенство 2017 Кубок 2017

Google
Sergey
09.01.2017
18:57:18
Нормализовать с умом нужно же :)

Fike
09.01.2017
18:57:32
а напиши rm -rf /*, пожалуйста

root
09.01.2017
18:58:13
Я видимо по ходу глубоко ухожу в нормализацию?

Sergey
09.01.2017
18:58:51
очень глубоко

постарайтесь по возможности избегать этого

root
09.01.2017
18:59:20
А проверять входные данные в скрипте до вставки? На правильность формата

Ок. Спасибо за совет

Roman
10.01.2017
05:35:36
Всем привет! Парни можете подсказать как на чистом sql-92 без использования доп. переменных вывести нумерацию строк. Что-то вроде функции rownum(). Третий день бьюсь безрезультатно(

Vladislav
10.01.2017
07:02:42
А разве это возможно? Я кроме декартово произведения и БД функций не видел ничего подобного...

Nick
10.01.2017
08:19:36
http://www.progtown.com/topic528828-rownum-ansi-sql-92.html

SELECT numbered.row_numb, t2.* from ( SELECT (SELECT COUNT (*) FROM TABLE_FOR_COUNTING WHERE id < t1.id) row_numb, t1.id id FROM TABLE_FOR_COUNTING t1 GROUP BY id ) numbered INNER JOIN TABLE_FOR_COUNTING t2 ON numbered.id = t2.id ORDER BY numbered.row_numb

Google
Nick
10.01.2017
08:34:49
на основе варианта из той темы

это с учетом что TABLE_FOR_COUNTING.id - уникальное числовое поле, но допустимы разрывы

Roman
10.01.2017
08:56:05
SELECT numbered.row_numb, t2.* from ( SELECT (SELECT COUNT(*) FROM product WHERE id < t1.id) row_numb, t1.id id FROM product t1 GROUP BY id ) numbered INNER JOIN product t2 ON numbered.id = t2.id ORDER BY numbered.row_numb

Nick
10.01.2017
08:56:43
(SELECT COUNT (*) + 1 FROM TABLE_FOR_COUNTING WHERE id < t1.id) row_numb ;

по идее должно сработать

или опять же перед выводом +1

Roman
10.01.2017
08:57:22
(SELECT COUNT (*) + 1 FROM TABLE_FOR_COUNTING WHERE id < t1.id) row_numb ;
Спасибо большое, работает!!!

Maxim
10.01.2017
14:13:06
Народ, такой вопрос, что могло вызвать резкий рост (за несколько минут до 30 гиг вырос) файла ibtmp1?

KOT
10.01.2017
14:24:23
Запрос с джойном был?

Две большие таблицы участовали, которые перемножились, отложились во временную гигантскую

Я так почти 200гб сгенерил, как-то раз

Для киляния надо рестартить демона

Maxim
10.01.2017
14:25:58
Может и был, пока не могу анализ провести

Ага, уже рестартанул. Пытаюсь пока допереть что могло повлиять

KOT
10.01.2017
14:35:39
А вот хз, у меня тупо схавало 200гб диска пока я чай себе делал

Maxim
10.01.2017
14:36:38
Хм

А вот хз, у меня тупо схавало 200гб диска пока я чай себе делал
вот что нашел http://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_temp_data_file_path Default ibtmp1:12M:autoextend а это ограничить размер innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G

Google
KOT
10.01.2017
16:50:59
autoextend - вот почему короче

Dmitry
10.01.2017
16:51:29
Кстати, а транкануть их низя?

KOT
10.01.2017
16:51:37
Нет

Dmitry
10.01.2017
16:51:45
Я вроде через оптимайз делал

KOT
10.01.2017
16:51:48
Я на РДС дико обломался

Надо было ребутить, хотя очень не хотелось

Так просто отдельного ребута процесса нету, только всего инстанса

Dmitrii
11.01.2017
14:25:34
Всем привет, есть MySQL сервер и 2 таблицы t1 HAS MANY t2, в обеих есть колонка с датой. Выбрать надо из первой с джойном второй, но в итоге надо получить одну колонку с датой где в первой строке дата из первой таблицы а остальные строки содержат дату из второй. Если в таблице t2 записей нет то в дате надо отображать только дату из t1.

Может кто дать в каком направлении копать?

Пока ничего чет на ум не приходит

Dmitrii
11.01.2017
14:31:05
Так надо пронумеровать строки результата

Dmitrii
11.01.2017
14:31:18
Разве в MySQL появились окнные функции?

Ведь иначе как мне понять первая ли это строка ROW_NUMBER() OVER (PARTITION BY sub_id) без чего то типа такого

Sergey
11.01.2017
14:33:35
Тут специфика мускула пошла уже

Pavel
11.01.2017
14:34:00
тебе нужно для одной записи из t1 или для всех?

Sergey
11.01.2017
14:34:07
Насколько я понял вторую таблицу надо лефт джойнить?

И если так смотри, если нулы идут - отображай кейсом дату1, если нет - дату2 бери

Dmitrii
11.01.2017
14:34:40
Для одной из t1 дата должна быть из t1 для всех приджойненых из t2 из t2

Точнее, t1 к t2

Google
Dmitrii
11.01.2017
14:35:41
Вордпресс )) Чтоб его.

У меня там посты и к посту надо получить все ревизии.

Только ревизия хранит ссылку на родителя.

Получается надо как то сэмулировать оконную функцию ROW_NUMBER() + CASE

Admin
ERROR: S client not available

Dmitrii
11.01.2017
14:39:12
Может есть другие варианты...

Fike
11.01.2017
14:39:46
если я не натупил и ты все пропускаешь через свой обработчик, то получай все из t1 и t2, а затем уже в ЯП отсекай лишнее

Dmitrii
11.01.2017
14:41:37
Не не варик

База огромная. Запрос аналитический

Pavel
11.01.2017
14:43:15
а на сколько быстро надо?)

сделай t1 join (t1 union t2)

Dmitrii
11.01.2017
14:49:45
Ну у меня поднят инстанс 256 Гб оперативы. Так что могу любую жесть творить

Sergey
11.01.2017
14:50:08
Красиво жить не запретишь, фигле

Fike
11.01.2017
14:50:17
База огромная. Запрос аналитический
если ты все равно пропускаешь каждую строку через яп, то какая разница?

или ты это вне вордпресса делаешь?

Dmitrii
11.01.2017
14:50:44
Вне конечно

Просто снапшот базы развернут на db.r3.8xlarge

Красиво жить не запретишь, фигле
Копейки, надо то на день.

Fike
11.01.2017
14:51:49
тогда можешь сделать еще одну таблицу, заполнить ее сначала значениями из t2, потом выбрать нужные из t1 и обновить их в этой таблице. потом джойнить к чему угодно.

Pavel
11.01.2017
15:20:41
а чем мое решние не подходит?

Google
Dmitrii
11.01.2017
15:54:47
Чуть позже попробую, щас телефон сядет и интернета не будет )

Ivan
11.01.2017
16:39:05
Ребят, порекомендуйте плиз где почитать/посмотреть про синтаксис ораклового SQL для рядового офисного воротничка(без админства). Т.е. по задачам типа- вытащить данные из нескольких таблиц/обновить данные в нескольких таблицах.

zerc
11.01.2017
16:45:52
обычный sql

для рядовых задач, никаких трюков

Ivan
11.01.2017
16:49:02
А к примеру конвейрные функции тоже везде есть или это специфика оракла?

И динамический sql в оракле тоже без сюрпризов?

Одну книжку нашел, но там примеры из mysql

lost
11.01.2017
17:03:07
в мускуле это довольно распространённая практика, когда нужно делать так называемый rowtype, чтобы отличать что показывать а что не показывать

root
11.01.2017
17:33:45
Всем ку! Подскажите опцию для ID AUTO_INCREMENT чтобы ID рандомный был

Fike
11.01.2017
17:34:41
рандомный перпендикулярен автоинкременту

но так существует обычный RAND()

root
11.01.2017
17:37:36
Мне для создания записей чтобы рандомный ID давал, а не по порядку

Не для выборки, для вставки данных надо

Fike
11.01.2017
17:38:14
uuid

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