|
|
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Пупсики, бывает ли случай, когда функция length возвращает значение 0 (ноль)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:20 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Lary DenisПупсики, бывает ли случай, когда функция length возвращает значение 0 (ноль)? Бывает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:22 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
AlexFF__|, не подскажешь, в каких случаях? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:23 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Lary DenisAlexFF__|, не подскажешь, в каких случаях? LOB локатор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:26 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Lary Denis, Код: plsql 1. Regards Maxim ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:26 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
А то был на собеседовании, не сообразил что ответить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:30 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
А вот это мне вообще мозг сломало Код: plsql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 15:41 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Lary DenisА вот это мне вообще мозг сломало Код: plsql 1. 2. 3. 4. 5. Насчет LNNVL , так это та привыкай к курению доки. Сначала не затягиваясь, а затем глядишь и во вкус войдешь. Хотя тут Oracle сам себе мозг сломал. LNNVL возвращает BOOLEAN от которого у SQL несварение и дока вобщем-то и говорит (правда can а не must) "LNNVL provides a concise way to evaluate a condition when one or both operands of the condition may be null. The function can be used in the WHERE clause of a query, or as the WHEN condition in a searched CASE expression ". Однако SQL хавает LNNVL но толком переварить не может. SQL преобразует тип результатa LNNVL в NUMBER а вот TRUE/FALSE не в 1/0 как хотелось бы, a в NULL. Код: plsql 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. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 16:14 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Я только не пойму зачем надо было делать LOGICAL NON-NULL VALUE? Зачем NON? Разве не проще было сделать проверку предиката с учетом пустых значений? Ну или хотя бы в дополнение.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 16:41 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
--Eugene--Я только не пойму зачем надо было делать LOGICAL NON-NULL VALUE? Зачем NON?Ее сделали для внутреннего употребления, вылезала в эксплейне на not in или что-то вроде того. Потом, видимо кто-то задействовал в в applications и решили опубликовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 16:58 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
2 -2-, автор вылезала в эксплейне вылезала обычно тогда, когда возникает concatenation в плане 2 --Eugene-- авторЗачем NON? вот как раз за этим. lnnvl на второй ветке должен отсечь все то, что уже попало в первую, не уничтожая то, из второй, что не попало в первую ветку. во первых, если lnnvl допустит для какой-то строки null и ее не было в первой части образуемого union, то эта строка будет просто потеряна. Не имеет права lnnvl давать null - он мир разрушит при дакой способности. Во вторых, без правильного lnnvl правильный concatenation, работающий как union all, без дополнительного distict, получить нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 18:12 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
booby, получить нельзя - в смысле затруднительно автоматически получить из текста конкретного запроса. Там где можно и оптимизатор обучен это делать, он сделает это не используя lnnvl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 18:17 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
booby, да моё возмущение не про это. оно про то, что ради проверки предиката с учетом пустых значений приходится логически менять предикат на обратный. ie: [a is not null or b is not null or a = b] == [lnnvl(a != b)] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 18:24 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
--Eugene--, во первых, вы ошибаетесь [lnnvl(a != b)] = (a = b OR a Is Null OR b Is Null) во вторых, на обратное логическое значение во второй части юниона меняется именно потому, что прямое сработало в первой. Только оно должно быть специальное обратное, такое, которое преобразует false в true, а unknown тоже в true. PS Если возмущает - презирай его. Это правильно в том отношении, что ошибок от непонимания, что творишь - не наделаешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 18:38 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
--Eugene--, прошу прощения, запечатался.. конечно же IS NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2016, 19:12 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Пупсики, вопрос с того же собеседования. Попросили перечислить предикаты, в плане данного запроса: Код: plsql 1. 2. 3. 4. 5. Я опять облажался. Назвал только 2 из 3х. Сказали, что такой разработчик им не подходит. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 16:45 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Судя по вопросам, в этой конторе специализируются на выборках из dual ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 17:01 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Предикатов: 0 - так как в документации предикат упоминается в контексте джоина, который здесь отсутствует. 1 - так как в глоссарии "where condition". 1 - так как в википедии предикат определяется как функция, возвращающая логический результат ... 6 - так как в википедии предикат определяется как функция, возвращающая логический результат, но за функцию также считаем операции (см. sys.standard). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 18:54 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
-2-Предикатов: http://mathhelpplanet.com/static.php?p=logika-predikatov ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 19:02 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
andrey_anonymous http://mathhelpplanet.com/static.php?p=logika-predikatov Дочитал до середины, потом умер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 19:07 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Жостьandrey_anonymous http://mathhelpplanet.com/static.php?p=logika-predikatov Дочитал до середины, потом умер Тем не менее, если рассматривать предикат в математическом смысле - как предложение, превращающееся в истинное или ложное утверждение при подстановке конкретных элементов множества, то предикатов будет ровно три: Код: plsql 1. 2. 3. которые на представленном множестве M из одного элемента 'X' превращаются в утверждения: Код: plsql 1. 2. 3. При этом на множестве M предикаты 1 и 3 - равносильны и тождественно истинны, а предикат 2 - тождественно ложен. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 19:21 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousпредикатов будет ровно три: Код: plsql 1. 2. 3. А как же предикат, определенный на множестве предикатов? Четыре! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 21:35 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
-2-А как же предикат, определенный на множестве предикатов? Четыре! Не верю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 21:44 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
-2-... 0 - так как .... 1 - так как ... 1 - так как ... ... 6 - так как в википедии предикат определяется как функция, возвращающая логический результат, но за функцию также считаем операции (см. sys.standard). я бы сказал 1, но их здесь не меньше пяти и не больше 21, с разумным ожиданием в районе 9, так так конкретно здесь 1 это 3(атома) и 2(двухместных символа), Итак: - предикат здесь один - фильтрующий - исходный - он же единственный один: AND(AND(lnnvl(dummy = 'Y'),nullif(dummy, 'Y') = 'S'),decode(dummy, 'X', 'S') ) , но - состоящий из трех предикатных атомов и двух двухместных предикатных символов AND - на которых образуются следующие предикаты исходный - он же единственный один: AND(AND(lnnvl(dummy = 'Y'),nullif(dummy, 'Y') = 'S'),decode(dummy, 'X', 'S') ) считаем предикаты: 1й lnnvl(dummy = 'Y') - A - атом 2й nullif(dummy, 'Y') = 'S' - B - атом 3й decode(dummy, 'X', 'S') = 'S' - C - атом 4й AND(lnnvl(dummy = 'Y'),nullif(dummy, 'Y') = 'S') 5й AND(lnnvl(dummy = 'Y'), decode(dummy, 'X', 'S') = 'S') 6й AND(nullif(dummy, 'Y') = 'S', decode(dummy, 'X', 'S') = 'S' ------ 4й, 5й и 6й коммутативны и атомы могут быть переставлены (+3) ------ 7й AND(AND(lnnvl(dummy = 'Y'),nullif(dummy, 'Y') = 'S'),decode(dummy, 'X', 'S') = 'S') 7й дает базовую конструкцию исследуемого фильтрующего предиката - AND(AND(A,B),C) в зависимости от деталей (ну, количества принятых на грудь перед собеседованием грамм, например) в этом месте ставится точка или продолжается: 8)- AND(AND(C,A),B) 9) AND(AND(B,C),A) 7й, 8й и 9й - каждый - может быть записан 4мя способами (3*4=12) + 6+3 = 21 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2016, 23:20 |
|
||
|
Функция length
|
|||
|---|---|---|---|
|
#18+
Lary DenisА то был на собеседовании, не сообразил что ответить. Какую только хренотень ораклисты у других ораклистов ни спрашивают... Я бы и не додумался спрашивать про какую-то функцию, про которую можно прочитать в документации... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 02:04 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39351258&tid=1886876]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
92ms |
get tp. blocked users: |
2ms |
| others: | 202ms |
| total: | 369ms |

| 0 / 0 |
