Size: a a a

2021 January 22

NP

Nick Proskuryakov in sql_ninja
Хорошо бы еще писать, надо сделать ЭТО, попробовал ТАК, ошибка ТАКАЯ, это прям все упростит
источник

TS

Tim Safari in sql_ninja
Tim Safari
Готовься, завтра спрошу )))
Спрошу, как сдал, естественно)))
источник

ᏒAᎩ in sql_ninja
Tim Safari
Спрошу, как сдал, естественно)))
источник

ᏒAᎩ in sql_ninja
Ладно. Я отвечу
источник

TS

Tim Safari in sql_ninja
ᏒAᎩ
Ладно. Я отвечу
👍🏻
источник

ᏒAᎩ in sql_ninja
Tim Safari
короче, перенести из одной таблицы можно по-разному:
сделать delete с output
или
скопировать данные,а  затем удалить.
в проде желательно все это обернуть в транзакции.

в твоей задаче - insert into Archive (<список столбцов>) select <список столбцов> from чего-у-тебя-там where <условие>
ну и удалить
Так просто.. а ведь я всего навсего не знал. Что можно использовать INSERT INTO БЕЗ VALUES и так со столбиками!
источник

А

Андрій in sql_ninja
ᏒAᎩ
Базы данных возможно определенно не мое. Это да. И я реально кучу всего читал. Просто ну не входит мне эта структура синтаксиса в этом языке. Я ничего не могу сделать
Тоже так думал а в итоге занесло
источник

MC

Max Chistyakov in sql_ninja
Хм, в постгре скл как-то не до конца реализованы замыкания, что-ли. Абсурд какой-то

Sometimes, though, it's better not to use a CTE. For example, you could try to preselect some columns from the table, thinking it would help the database to perform the query faster because of the reduced amount of information to process. In that case, the query could be as follows:
WITH car_subquery AS
(
 SELECT number_of_owners, manufacture_year, number_of_doors
   FROM car_portal_app.car
)
SELECT number_of_owners, number_of_doors FROM car_subquery
 WHERE manufacture_year = 2008;

This has the opposite effect. PostgreSQL does not push the WHERE clause from the primary query to the sub-statement. The database will retrieve all the records from the table, take three columns from them, and store this temporary dataset in memory. Then, the temporary data will be queried using the manufacture_year = 2008 predicate. If there was an index on manufacture_year, it would not be used because the temporary data is being queried and not the real table.
источник

K

Kostya in sql_ninja
Max Chistyakov
Хм, в постгре скл как-то не до конца реализованы замыкания, что-ли. Абсурд какой-то

Sometimes, though, it's better not to use a CTE. For example, you could try to preselect some columns from the table, thinking it would help the database to perform the query faster because of the reduced amount of information to process. In that case, the query could be as follows:
WITH car_subquery AS
(
 SELECT number_of_owners, manufacture_year, number_of_doors
   FROM car_portal_app.car
)
SELECT number_of_owners, number_of_doors FROM car_subquery
 WHERE manufacture_year = 2008;

This has the opposite effect. PostgreSQL does not push the WHERE clause from the primary query to the sub-statement. The database will retrieve all the records from the table, take three columns from them, and store this temporary dataset in memory. Then, the temporary data will be queried using the manufacture_year = 2008 predicate. If there was an index on manufacture_year, it would not be used because the temporary data is being queried and not the real table.
парсинг в лоб :)))
источник

B

BOMBOM in sql_ninja
А когда будет следующий стрим?
источник

IK

Ivan Kuzmin in sql_ninja
Max Chistyakov
Хм, в постгре скл как-то не до конца реализованы замыкания, что-ли. Абсурд какой-то

Sometimes, though, it's better not to use a CTE. For example, you could try to preselect some columns from the table, thinking it would help the database to perform the query faster because of the reduced amount of information to process. In that case, the query could be as follows:
WITH car_subquery AS
(
 SELECT number_of_owners, manufacture_year, number_of_doors
   FROM car_portal_app.car
)
SELECT number_of_owners, number_of_doors FROM car_subquery
 WHERE manufacture_year = 2008;

This has the opposite effect. PostgreSQL does not push the WHERE clause from the primary query to the sub-statement. The database will retrieve all the records from the table, take three columns from them, and store this temporary dataset in memory. Then, the temporary data will be queried using the manufacture_year = 2008 predicate. If there was an index on manufacture_year, it would not be used because the temporary data is being queried and not the real table.
Надо смотреть о какой версии речь, в старых cte в postgrsql материализовалось всегда и тогда да, в новых поведение поменяли кажется с 11ой версии
источник

mm

m m in sql_ninja
Kostya
кидайте че там куда там
+
источник
2021 January 23

MC

Max Chistyakov in sql_ninja
Ivan Kuzmin
Надо смотреть о какой версии речь, в старых cte в postgrsql материализовалось всегда и тогда да, в новых поведение поменяли кажется с 11ой версии
Угу, я в постгре 13 решил воспроизвести ситуацию на таблице из 4 млн строк - не подтвердилось
источник

G

Gopneg in sql_ninja
Max Chistyakov
Угу, я в постгре 13 решил воспроизвести ситуацию на таблице из 4 млн строк - не подтвердилось
да, глядишь лет через 10 до нормальной субд дорастет
источник

G

Gopneg in sql_ninja
хотя вряд ли, скорее хуем по губам поводят, опенсурс же
источник

G

Gopneg in sql_ninja
лицензию сменят, сосите писю или форкайте
источник

AC

Alexey Chaykin in sql_ninja
Max Chistyakov
Угу, я в постгре 13 решил воспроизвести ситуацию на таблице из 4 млн строк - не подтвердилось
Это называется predicate pushdown. Такого рода фичи удобно смотреть у Винанда (какие СУБД поддерживают и с какой версии): https://modern-sql.com/feature/with/performance
источник

ᏒAᎩ in sql_ninja
Tim Safari
👍🏻
10)
источник

ᏒAᎩ in sql_ninja
А у меня есть вопрос.
Почему таблицу без кластерного индекса - называют кучей ?
Куча же больше относится к оперативной памяти и этому "около рандомном процессе ее выделения"
А в субд - все данные храняться на жестком диске. И я не понимаю. Как жесткий диск вообще может реализовать подобную "куче" структуру
источник

IS

Igor Sergeichik in sql_ninja
ᏒAᎩ
А у меня есть вопрос.
Почему таблицу без кластерного индекса - называют кучей ?
Куча же больше относится к оперативной памяти и этому "около рандомном процессе ее выделения"
А в субд - все данные храняться на жестком диске. И я не понимаю. Как жесткий диск вообще может реализовать подобную "куче" структуру
не обязательно на жёстком диске, может и в памяти храниться
источник