|
|
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Спасибо, познавательный труд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2017, 15:32 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
!Спасибо за труд! Очень познавательно. Особенно понравилось то, что много примеров и легко их воспроизвести. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2017, 06:32 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
На странице 23 получается небольшая неточность Запрос заполняет табличку днями недели Код: plsql 1. 2. 3. 4. У меня, например, заполняется русскими названиями, из-за этого некорректно будет отрабатывать запрос где сравнение идет по дням недели (on w.day = p.day) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2017, 06:45 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Mr_Muscle, Спасибо, учту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2017, 11:57 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
SQL*Plusdbms_photoshopпропущено... Я подразумевал внешние соединения, но из процитированного абзаца это совершенно непонятно. Надо переформулировать. Спасибо. пропущено... Посмотрю сохранившуюся документацию по ORACLE v5 в переводе РДТеХ.. Посмотрел. Подтверждаю, что в ORACLE v5 использовали (+) для указания внешних соединений. SQL*Plus. Руководство пользователя. Версия 2.0 Подготовлено к печати 24 марта 1991 г. SQL*Plus User's Guide Version 2.0 Part No. 3201-V2.0 July 1987 Внешние соединения (стр. 76) Код: plsql 1. 2. 3. 4. Потом сделаю скан этой страницы и размещу здесь, чтобы осталась для истории... :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 12:52 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
v5 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 13:03 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Elicv5 Это ещё одно подтверждение про (+) в ORACLE v5. Может быть у кого-то остались описания от ORACLE v4? Советская версия называлась КАРС, КАРС-32 (Корневая Автоматизированная (?) Реляционная Система). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 13:17 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Валерий Юринский, Вот и верь после этого сотрудникам Оракла. :)) Хотя я помню, что не только у госпожи Колган встречал про шестую версию. На сайте Оракла можно нагуглить такой антиквариат http://www.oracle.com/technetwork/database/database-technologies/rdb/0307-sql1999-130211.pdf Basic joined tables: Inner joins, right and left outer joins, with full nesting with arbitrary comparison operators. Rdb has supported this feature since V6.0. В других местах пишут, что old style синтаксис реализован по стандарту SQL-86. В третьих местах пишут, что в SQL-86 ничего не было про внешность соединений и некоторые вендоры реализовывали по своему усмотрению. http://in2test.lsi.uniovi.es/sqlfpc/?lang=en#sql86joins The SQL86 standard does not specify outer joins. However, there are some DBMS vendor specific ways to indicate outer joins which are now supported. Given a join condition in the WHERE over columns a and b of the joined tables, the following outer joins are supported: Oracle: a = b (+) (left), a (+) = b (right) SQL Server: a *= b (left), a =* b (right)Похоже на правду, в МССКЛ даже на последних версиях работает эта техника со звездочками. А вообще насколько я понял 4-я версия была даже не клиент-серверной, так что в те дебри не особо интересно уже лезть. Раньше у меня было несоклько pdf c историческими вехами, но некоторые все еще просто гуглятся на сайте Оракла. http://www.oracle.com/us/corporate/profit/p27anniv-timeline-151918.pdf 1985 Oracle keeps pace with emerging computing models with the release of Oracle Version 5, one of the first relational database systems to operate in client/server environments. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 13:37 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopВалерий Юринский, А вообще насколько я понял 4-я версия была даже не клиент-серверной, так что в те дебри не особо интересно уже лезть. Раньше у меня было несоклько pdf c историческими вехами, но некоторые все еще просто гуглятся на сайте Оракла. [/quot] В нашей книге "Oracle7: Практическое руководство" (М., Софтсервис, 1997) я привел историческую информацию, почерпнутую из большого текста, найденного в конференции Usenet. Это был перевод на русский язык. P.S. Книжку уже отсканировали. Жду, когда распознают в текст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 13:47 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Автор, а куда вы выкладываете новую версию книги, в первом сообщение есть ссылка на книгу, но там версия 1.0. или 1.0 пока и есть последняя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2017, 15:14 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
rekrabbeпока и есть последняя?Да. PS. К сожалению, движок wordpress не позволяет удалить файл и загрузить с тем же именем, так что новую ссылку выложу здесь позже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2017, 15:20 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop, блин как-то пропустил тему. Сейчас в "курилке" увидел сообщение про книгу, почитаю на досуге. Спасибо за труд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2017, 15:55 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Работа завершена. Получилось "немного" позже чем конец февраля, но вторая часть оказалась несколько насыщеннее, чем предполагалось. Итого опубликовано 15 задач, которые решаются разными специфическими фичами Oracle SQL. Все примеры из реальной жизни (ну ладно, кроме Zeckendorf representation и Quine :)), определенное влияние на контент, безусловно, оказано общением на sql.ru Хотел бы выразить благодарность Elic, SY, -2-, wurdu, andrey_anonymous, RAVEN, Sayan Malakshinov, orawish, Vladimir Sitnikov, anrdeymx, Nikotin_, suPPLer, Vint, stax, всех сложно перечислить. Sayan Malakshinov и orawish повлияли напрямую - во второй части от них использовано по одному PL/SQL алгоритму. Некоторые задачи планировал опубликовать как пятничные, но в итоге таки воздержался. Если кто придумает более элегантные/производительные решения - просьба продемонстрировать. В summary ко второй части таблица со спискам задач и приемами, использованными в решении . Для некоторых можно было включить дополнительные приемы, но поскольку они не вносили никакой новизны и не являются привлекательными с точки зрения производительности - этого сделано не было. Вторая часть более практическая и меньше первой по объему, полагаю читать ее увлекательнее чем первую, хотя, местами, может быть и сложнее. Критика и комментарии приветствуются. Все версии книги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 01:27 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
Кстати, пару человек после первой части мне говорили "не слишком ли ты восхваляешь pattern matching? неплохо бы больше фактов". Надеюсь это требование удовлетворено. Еще важный момент что все скрипты для исходных данных находятся непосредственно в книге и в тех случаях, когда использовано dbms_random.seed, стоит про него не забывать для воспроизводимости результатов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 01:31 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop, Thx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 09:07 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop Задача: для таблицы с числами получить сумму их всех возможных комбинаций ... Если бы в таблице были только первые три строки, select * from t_num where id < =3; ID NUM1 1 2 4 3 9 то были бы такие комбинации чисел 1 + 4 = 5 1 + 9 = 10 4 + 9 = 13 1 + 4 + 9 = 14 и итоговая сумма 5 + 10 + 13 + 14 = 42 Садись, два. Сами числа исходной таблицы есть комбинации. Правильный ответ - 42 + 14 = 56 dbms_photoshop На SQL это решается, если сгенерировать все возможные перестановки (как минимум два способа с помощью connect by) и затем для перестановки посчитать сумму. Вычисление суммы всех возможных комбинаций не требует "генерации" последовательностей . Поэтому не требуется ни 25 секунд, ни 10-и, ни, даже, 0,5-и. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Видать, бином Ньютона, в средней школе, как-то мимо тебя просклизнул. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 17:00 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
booby, Замечательно, что ты получил "true_result", только это не то, что требовалось в задаче. Перечитай что требуется еще раз. Если вопросы останутся - можно поговорить, если ты изменишь стиль. В сгенерированных данных может быть какая-то магия (хотя я ее пока не вижу), но речь идет про общий случай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 17:16 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop, магия, вопросы... Смешной ты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 17:19 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopВ сгенерированных данных может быть какая-то магия (хотя я ее пока не вижу), но речь идет про общий случай.Точнее, учитывая вполне фиксированную формулу для генерации можно вывести формулу для суммы всего, но это не то, что требуется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 17:19 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
boobydbms_photoshop, магия, вопросы... Смешной ты.Спасибо за твое замечание, booby. Хорошего дня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2017, 17:21 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop, a1+a2+a3 + (a1+a2+a3) + (a1+a2) + (a1+a3) + (a2+a3) =4(a1 + a2 + a3) Ну и дальше школьная математика в аппроксимации на N элементов. А вообще это действительно следствие из бинома Ньютона Пример не самый удачный получился. Для таких задач полно уже выведенных формул в комбинаторике. А вот для задачи с комбинациями строк таких формул сильно меньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2017, 11:16 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
env, Целью надо сделать получение таблицы с комбинациями, а не их суммы. Это упрощение было лишним. Там дальше еще встречается сравнение запросов с select sum(...) вместо select * для того, чтоб минимизировать фетч. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2017, 11:42 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopКстати, изначально планировал еще три главы ... Особенности DML в Oracle. Например, про update при наличии join ... и подобное. Это всё есть в блогах известных товарищей и прочих местах и заниматься просто компиляцией несколько нудно. А главное эти три темы выходят за рамки основной идеи книги. Я вот не припомню, чтобы в книгах по оракл было про апдейт или дилит с джойнами. В отличие от книг по MySQL или MS SQL. По-моему, это базовая вещь и обязательно должна присутствовать в любой книге по sql. Странно это. Или имелось в виду что-то отличное от Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2017, 17:17 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
мегамозг, открой для себя merge ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2017, 17:43 |
|
||
|
The Power of Oracle SQL
|
|||
|---|---|---|---|
|
#18+
мегамозгЯ вот не припомню, чтобы в книгах по оракл было про апдейт или дилит с джойнами.RTFM Updating a Join View (FAQ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2017, 17:45 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39438790&tid=1884482]: |
0ms |
get settings: |
4ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
33ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 326ms |

| 0 / 0 |
