|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Ivan Durakэто ты разработчиков оракл перешедших на постгресс не наблюдал. Душераздирающее зрелище. Разработчики, переходящие куда-либо с оракла - вообще душераздирающее зрелище. Спускаться тяжело, постоянное ощущение, что попал в каменный век. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 12:07 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
softwarerIvan Durakэто ты разработчиков оракл перешедших на постгресс не наблюдал. Душераздирающее зрелище. Разработчики, переходящие куда-либо с оракла - вообще душераздирающее зрелище. Спускаться тяжело, постоянное ощущение, что попал в каменный век. причем это ощущение есть внутренне свойство психики и совершенно не зависит на самом деле откуда и куда переходишь. Хоть с аксесса, хоть с фокспро ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 12:12 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Ivan Durakпричем это ощущение есть внутренне свойство психики и совершенно не зависит на самом деле откуда и куда переходишь. Хоть с аксесса, хоть с фокспро Ошибаетесь. Очень даже зависит. Когда поднимаешься, ощущение совсем другое: "Вау, а я-то с этим мучился... блин, а вон там-то я для этого велосипеды творил, а здесь из коробки гораздо лучше..." ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 12:24 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
softwarerОшибаетесь. Очень даже зависит. Когда поднимаешься, ощущение совсем другое: "Вау, а я-то с этим мучился... блин, а вон там-то я для этого велосипеды творил, а здесь из коробки гораздо лучше..." Ни разу такого не видел. Обычно бывает наоборот: "А где возможность Х? А как сделать Y к которому я привык? Что, совсем никак?.." Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 13:01 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Я не знал, что в MS SQL с аналитическими функциями не фонтан... https://habrahabr.ru/post/276835/ ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2016, 03:39 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtender, А ничего, что там обсуждается версия базы данных восьмилетней давности? и там есть нормальное решение под более новую версию https://habrahabr.ru/post/276835/#comment_8776059 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2016, 11:06 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Andrey Sribnyak, ну я его и предложил и оно не нормальное, а костыльное... Andrey SribnyakА ничего, что там обсуждается версия базы данных восьмилетней давности?и кстати, по-моему не уметь в 2008 lead/lag - уже само по себе плохо... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2016, 13:25 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtenderAndrey Sribnyak, ну я его и предложил и оно не нормальное, а костыльное... Andrey SribnyakА ничего, что там обсуждается версия базы данных восьмилетней давности?и кстати, по-моему не уметь в 2008 lead/lag - уже само по себе плохо... плохо. Бесспорно. Хорошо, что сейчас не 2008 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 09:37 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Ivan Durak, Ignore nulls и сейчас нет... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 09:55 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtenderAndrey Sribnyak, ну я его и предложил и оно не нормальное, а костыльное... Andrey SribnyakА ничего, что там обсуждается версия базы данных восьмилетней давности?и кстати, по-моему не уметь в 2008 lead/lag - уже само по себе плохо... есть такая мысль, что т.н. аналитические ф-ции в sql -- это всё довольно печально. я бы сказал -- медленно и печально. и покрывает очень малую область. и на каждый чих нужно еще доп слова в конструкцию. которые оракел всё вводит и вводит. и конца не видно. (остальные отстают, да) т.е. что-то вместо них нужно, прозрачное этакое, но не ясно что нет хороших идей по конструкциям языка. ну нет. а всё, что порождено в недрах ара-кала -- всё скорее левое, чем с правой резьбой. евпочя всё имхо, ессно. последнее из приятного в sql было lateral -- вот с ним как-то удачно сложилось. очень sql-но. не знаю, кто его изобрел, но если ара-калоеды -- респект. и, не побоюсь этого слова, даже уважуха. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 12:28 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
этта, согласно стандарту спецификация оконных функций такая Код: plaintext 1.
к сожалению не все СУБД поддерживают именованные окна, поэтому приходится каждый раз описывать спецификацию окна Код: sql 1. 2. 3. 4. 5. 6.
вместо Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
второй запрос выглядит покрасивше и лаконичней особенно если спецификация окна сложная. Что касается скорости, то согласен работает не очень шустро. ЕМНИП lateral пришёл из sybase asa ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 13:02 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
эттаесть такая мысль, что т.н. аналитические ф-ции в sql -- это всё довольно печально. я бы сказал -- медленно и печально. и покрывает очень малую область. и на каждый чих нужно еще доп слова в конструкцию. которые оракел всё вводит и вводит. и конца не видно. (остальные отстают, да) не согласен. Область применения очень и очень обширна. Они пришли на смену курсорам - вот которые и есть на самом деле инородная вещь не вписывающаяся в дух sql и операций над множествами. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 11:11 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Ivan Durakэттаесть такая мысль, что т.н. аналитические ф-ции в sql -- это всё довольно печально. я бы сказал -- медленно и печально. и покрывает очень малую область. и на каждый чих нужно еще доп слова в конструкцию. которые оракел всё вводит и вводит. и конца не видно. (остальные отстают, да) не согласен. Область применения очень и очень обширна. Они пришли на смену курсорам - вот которые и есть на самом деле инородная вещь не вписывающаяся в дух sql и операций над множествами.в том то и собака порылась, что они не пришли на смену курсорам, а декларативно пыжатся описать некие подклассы работы с курсорами в pl/sql . Т.е. просмотр вперёд и назад при фетче вдоль. Но и пыжатся плохо. мощности и выразительности мало, а слов лишних требуется (как всегда у оракла) до хера. И всё время где--то рыбу заворачивают (как с роунамом вместо лимита/"фёстом", который даже не фёст -- а лишние слова в кучку типа "кип-что-то-нах" -- вместо того же лимита, и т.п, и т.д. тьху на них 100500 раз слюной ). я не говорю, что для этого слова не нужны . нужны, но другие, более мощные и ёмкие. А у оракла традиционно какие-то безъязыкие математиксы синтакс генерят. том наверное, небезызвестный, за которого тыщщи индусов ответы на асктоме постят. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 11:38 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
эттакак с роунамом вместо лимитав 12c добавили такой синтаксический сахар причем шире чем обычный лимит - https://oracle-base.com/articles/12c/row-limiting-clause-for-top-n-queries-12cr1 эттав кучку типа "кип-что-то-нах" -- вместо того же лимитаkeep и limit это из разных опер. эттая не говорю, что для этого слова не нужны . нужны, но другие, более мощные и ёмкиеperl/ruby/golfscript уж на что емкие и мощные, только потом плюются на их однострочники ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 11:58 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtender<> эттав кучку типа "кип-что-то-нах" -- вместо того же лимитаkeep и limit это из разных опер.<>вот да. получение "ферста" кипом -- явное психическое заболевание изобрёвов оного синтакса. все эти задачи, как и прочие, т.е. не только эти -- нормально решаются лимитом ---... ORDER BY LIMIT 1 . вообще всё, что "интерфейсы" (а язык -- частный случай интерфейса) - у оракла традиционно не в красную армию. кто всякие нетки дбки и т.п. видел -- тот в цырке не смейотса. А уж ора--формс специально надо было выдумать, чтобы всем показывать, как не надо делать. и чтобы задать абсолют на шкале ужасов. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:20 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
эттавот да. получение "ферста" кипом -- явное психическое заболевание изобрёвов оного синтаксане надо путать... никто keep'ом не получает лимит. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:21 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:28 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
но вообще, если речь не о TOP как в MS SQL, а о пейджинге, то в идеале лучше использовать курсоры двунаправленные ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:31 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtenderэттавот да. получение "ферста" кипом -- явное психическое заболевание изобрёвов оного синтаксане надо путать... никто keep'ом не получает лимит. вот на ходу перевирать не надо. вы же не дурак, т.ч. очевидно что--то в другой области не так. соболезную. кипом получают т.н. "фёрст" , (слово отсутствует в языке напрочь, но в отсылках с форума, как и в ртфм--овом бреде на ара кальном сайте -- найти можно. с трудом.) тот же "фёрст" нормальные люди получают лимитом -- как побочка стандартного подхода без лишних слов типа "кип денс ранка" и что--то там ещё. а вот в старых ара--калах это (добыть фёрст роунамом) было затруднительно -- из за необходимости передать поле на пару уровней глубже, ан эти дятлы (индусы, якобы) алиас так глубоко передавать запретили -- это стандартная проблема иногородних в ара--кале. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:32 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
эттакипом получают т.н. "фёрст"мдаа... говорю же, что-то у вас все перепутано. keep: Код: sql 1. 2. 3. 4. 5. 6.
А лимит делался через либо через rownum, либо через row_number/rank/dense_rank/ntile + over: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
в этом случае еще и можно добавить partition by ... - тогда топы будут для каждой группы. Очевидно же что так возможностей больше, чем просто limit? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:46 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtenderесли вкратце, то что limit Код: sql 1.
в оракле сейчас такое: эта реализация в оракле соответствует стандарту ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 12:59 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
Симонов Денис, да и у MS SQL практически так же: https://technet.microsoft.com/en-us/library/ms188385(v=sql.110).aspx Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 13:10 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
xtenderэттакипом получают т.н. "фёрст"мдаа... говорю же, что-то у вас все перепутано. keep: Код: sql 1. 2. 3. 4. 5. 6.
это у вас все перепутано Код: sql 1. 2. 3. 4. 5. 6.
-- не надо никакой путаницы "агрегатов" с, на деле, -- как правило -- индексным seek. + на мн--во полей распространяется примитивным lateral. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Всё делается одним и тем же стандартным образом. никаких грёбанных лишних слов не надо. особенно -- из области ораклового же окнизма-агрегатизма -- т.е. синтасического идиотизма в запредельно запущенном виде. что отчасти простительно лишь потому, что внятной альтернативы пока нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 13:48 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
эттаэто у вас все перепутано Код: sql 1. 2. 3. 4. 5. 6.
что за дурь? скалярные подзапросы от аналитики отличаем вообще? да еще и многократное обращение к таблице... этта-- не надо никакой путаницы "агрегатов" с, на деле, -- как правило -- индексным seek.такую жесть даже комментировать не хочется... этта+ на мн--во полей распространяется примитивным lateral. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
еще один селфджойн... тупо жесть... Ну и в оракле такую же муть тоже можно сделать, и lateral там тоже есть. и умеет джойны в lateral разворачивать ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2016, 13:58 |
|
Разница SQL синтаксиса в MSSQL и Oracle
|
|||
---|---|---|---|
#18+
этта, я смотрю все совсем печально? вместо аргументации какая-то дурь из тебя лезет, да еще и опять же не понимаешь, даже то о чем пишешь... ну и к слову, я указывал что идеальным вариантом был бы вариант реализации INDEX SKIP SCAN с проходом по бранчам + stopkey, но этого пока нет ни в одной из СУБД, так что опять же к ораклу тут претензий никаких нет. В postgresql насколько я знаю index skip scan'a вообще нет ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2016, 15:51 |
|
|
start [/forum/topic.php?fid=35&msg=39176626&tid=1552287]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
2ms |
others: | 237ms |
total: | 423ms |
0 / 0 |