SQL

2012-06-29 15:58
d4s: (Default)
[personal profile] d4s
А вот скажет -- разница при обучении сабжу версии начала 2000-х и современных -- она действительно колоссальная?

Date: 2012-06-29 13:27 (UTC)
From: [identity profile] avr-forever.livejournal.com
Базовые конструкции те же. Небазовые --- это обычно СУБД-зависимые расширения.

Date: 2012-06-29 13:29 (UTC)
From: [identity profile] captain-hell.livejournal.com
То-то мы для каждой базы переписываем генераторы этих "базовых" конструкций ;-)))

Date: 2012-06-29 13:34 (UTC)
From: [identity profile] avr-forever.livejournal.com
Ну так ССЗБ тогда. Нефиг писать так.

Date: 2012-06-29 15:01 (UTC)
From: [identity profile] captain-hell.livejournal.com
Да что вы говорите? Я не знаю ни одного решения, в котором SQL бы не менялся в зависимости от базы. Что смотреть, SAP - свои движки под каждую базу. Hibernate - тоже. Да любой базонезависимый маппинг внутри - тыща и один диалект.

Или может покажете обратный хороший пример?

Date: 2012-06-29 13:51 (UTC)
From: [identity profile] max-posedon.livejournal.com
Ага, конструкции те же, а query plan-ы совершенно разные:

SELECT field1 FROM table1 WHERE field2 IN ( SELECT field2 FROM table2 );

Вот эта базавая конструкция работает совершенно по разному в MySQL и PosgtreSQL, хоть и выдаёт одинаковый результат.

Date: 2012-06-29 13:56 (UTC)
From: [identity profile] avr-forever.livejournal.com
Ну это уже тонкости. Естественно, их придётся учитывать при работе с конкретной СУБД. А есть такие штуки, например, как Metakit, в котором всё вообще наобормот (там нет SQL, правда).

Date: 2012-06-29 14:30 (UTC)
From: [identity profile] max-posedon.livejournal.com
Какие в жопу тонкости? Когда алгоритмическая сложность отличается в n раз.

Date: 2012-06-29 14:37 (UTC)
From: [identity profile] avr-forever.livejournal.com
Давай без выражений. Особенности обработки конструкций --- это особенности обработки конструкций, да. Это не относится к тому, что конструкции имеют одинаковый смысл (= интерфейс тот же, реализация разная).

Date: 2012-06-29 15:05 (UTC)
From: [identity profile] max-posedon.livejournal.com
в теории на практике тоже самое что в теории, на практике получается иначе

тот факт, что в одной конкретной базе запрос работает "очень долго" делает этот запрос бесмысленным и не работающим для этой базы

Date: 2012-06-29 15:23 (UTC)
From: [identity profile] metaclass.livejournal.com
Люди не знают, что и как означает эта конструкция. Их нужно этому обучить, а не начинать с "алгоритмической сложности", благо к тому времени, как они закончат обучение - оная сложность или будет у всех примерно одинаковой, или недоСУБД просто отомрут.

Date: 2012-06-30 08:11 (UTC)
From: [identity profile] thinker8086.livejournal.com
По первому пункту согласен, по второму - см MySQL, который отмирать не собирается при всех своих косяках.

Date: 2012-06-29 16:19 (UTC)
From: [identity profile] eternal-leave.livejournal.com
Сабжевые студенты вообще первый раз в жизни видят селект - ты серьезно предлагаешь рассказывать им о составлении плана запроса?

Date: 2012-06-30 08:11 (UTC)
From: [identity profile] thinker8086.livejournal.com
О! В точку.

Date: 2012-06-30 08:48 (UTC)
From: [identity profile] max-posedon.livejournal.com
Да, я хочу показать людям query plan из postgresql-я, и если они не смогут его прочитать, у меня будут вопросы к тому, как они прошли экзамен по основам алгоритмов.

query plan - это псевдо код, это для студента должно быть проще чем SQL, если он хоть чуть-чуть умеет программировать

Date: 2012-06-30 09:45 (UTC)
From: [identity profile] eternal-leave.livejournal.com
Ты идеалист :)

Date: 2012-07-01 04:42 (UTC)
From: [identity profile] darafei praliaskouski (from livejournal.com)
для начала тебе придётся как минимум объяснить, что такое Aggregate, Seq Scan, Filter, и зачем вообще сеществует Recheck Cond.

Date: 2012-07-01 20:18 (UTC)
From: [identity profile] max-posedon.livejournal.com
Объяснить это тем, кто в будуем будет работать в IT не составляет трудности.
А обучать тех, кто будет заниматься чем-то совершенно иным - бесмысленно.

Profile

d4s: (Default)
d4s

October 2016

M T W T F S S
     12
345 6789
10111213141516
17181920212223
24252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated 2026-04-07 19:36
Powered by Dreamwidth Studios