Лыцарь пичальнава образа - Постгресяне == гнойные пидарасы [entries|archive|friends|userinfo]
silly_sad

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

Постгресяне == гнойные пидарасы [Jul. 25th, 2012|05:18 pm]
Previous Entry Add to Memories Tell A Friend Next Entry
Я охуеваю от способности некоторых людей создавать геморрой на ровном месте!!! на АБСОЛЮТНО РОВНОМ МЕСТЕ!

Функция array_length() возвращает NULL для пустых массивов.
LinkLeave a comment

Comments:
From:[info]tzirechnoy.livejournal.com
Date:July 25th, 2012 - 03:36 pm
(Link)
>Я охуеваю от способности некоторых людей создавать геморрой на
> ровном месте!!!

Я, в общем, тожэ. Именно этими словами я могу описать жэлание использовать array в RDBMS.
From:[info]silly_sad
Date:July 25th, 2012 - 04:23 pm
(Link)
вам чуждо понятие абстракции?
каким боком RDBMS к саюжевой проблеме?

если мы вернём нул или ебучий нан для пустово массива например в Яваскрипте, вам станет легче?
From:[info]tzirechnoy.livejournal.com
Date:July 25th, 2012 - 04:36 pm
(Link)
>каким боком RDBMS к саюжевой проблеме?

Ты её именно в RDBMS обнаружыл.

>если мы вернём нул или ебучий нан для пустово массива например в
> Яваскрипте, вам станет легче?

Вот только чтобы хотеть array в RDBMS -- надо быть дебилом и нихрена не понимать в RDBMS. Чего жэ тогда удивительного, что эту фичу в опенсорсной базе данных написал дебил? Очень ожыдаемое поведение.

Ты ещё вот на лепру бы пошёл -- и потом удивлялся, почему вокруг одни дебилы.
From:[info]os80.livejournal.com
Date:July 25th, 2012 - 04:59 pm
(Link)
Как бы объяснить сестре, с чего я так ржу?

Именно для пустых массивов? Не для NULL (не знаю, есть ли такие в постгрессе)?
From:[info]tzirechnoy.livejournal.com
Date:July 25th, 2012 - 05:29 pm
(Link)
Да, именно для пустых. В постгрэссе есть и пустые, и NULL, они отличаются, и для обоих array_length() возвращает NULL.
Это связано с тем, что там ещё array_length() смешной -- рассчитан на массивы любой размерности, просит номер размерности, длину которой подсчитать, и возвращает NULL если так или иначе не нашёл соответствующую размерность.
Но всё это отборный дебилизм, конечно.
[User Picture]
From:[info]lolepezy
Date:July 25th, 2012 - 07:52 pm
(Link)
Ну это как раз понятно почему.
Потому что для пустого массива он не знает есть
ли такая размерность вообще. Поэтому и возвращает
"не знаю", то бишь null.
From:[info]silly_sad
Date:July 25th, 2012 - 09:38 pm
(Link)
нет. это не так.
для пустого массива ОН ТОЧНО ЗНАЕТ что такой размерности нет.
но когда я его спрашиваю СКОЛЬКО элементов по несуществующей координате, он сука обязан мне ответить НОЛЬ. потому что он точно знает что там нет элементов.

нул же он возвращает потому что: "заставб дурака богу болиться, он себе голову разобьёт"
[User Picture]
From:[info]lolepezy
Date:July 26th, 2012 - 06:39 am
(Link)
У пустого массива размерностей вообще нет, array_ndims и array_dims
точно так же возвращают для него NULL, т.е. пока в массиве пусто,
про него вообще ничего сказать нельзя, black hole. Другое дело, что
от этого удобнее не стало, ну так NULL вообще не очень удобная концепция.
Ну и вот еще, возможно, оно и изменится.
From:[info]silly_sad
Date:July 26th, 2012 - 09:09 am
(Link)
Нет, это не так.
у пустого массива размерностей НОЛЬ, (хотя не было бы ошибкой почитать размерность пустого массива единицей).

всё это изчисление размерностей не требует нула вовсе -- можно построить непротиворечивую арифметику размерностей без нулов.
From:[info]tzirechnoy.livejournal.com
Date:July 26th, 2012 - 12:39 pm
(Link)
Размерностей у него ноль, следовательно, ни одной размерности не существует, следовательно, понятие размер к любой размерности неприменимо -> размер NULL.

Другой вопрос, что какого чёрта там размерностей ноль, если у нас тип int[] или int[][]? Вот жэ написано, размерностей один или там размерностей две.
From:[info]silly_sad
Date:July 26th, 2012 - 01:23 pm
(Link)
и ваша точка зрения тоже совершенно верна!

тоесть тут с двух совершенно ортогональных точек зрения нул неправомерен.
From:[info]silly_sad
Date:July 26th, 2012 - 01:25 pm
(Link)
впрочем это разсуждение мне напомнило о разсуждении о ТИПЕ НУЛА. :)
короче я окончательно понял что статью про нулы _НАДО_ переводить и публиковать.
From:[info]silly_sad
Date:July 26th, 2012 - 09:15 am
(Link)
> "пока в массиве пусто, про него вообще ничего сказать нельзя"

пожалуй это и есть корень ошибки.
в массиве не пусто, и НЕ ПОКА -- он просто пустой, причём НАВСЕГДА.
и про него можно сказать ВСЁ! абсолютно всё. пустой массив ОПРЕДЕЛЁН ничуть не менее любого другого массива.