Comments: |
>Я охуеваю от способности некоторых людей создавать геморрой на > ровном месте!!!
Я, в общем, тожэ. Именно этими словами я могу описать жэлание использовать array в RDBMS.
вам чуждо понятие абстракции? каким боком RDBMS к саюжевой проблеме?
если мы вернём нул или ебучий нан для пустово массива например в Яваскрипте, вам станет легче?
>каким боком RDBMS к саюжевой проблеме?
Ты её именно в RDBMS обнаружыл.
>если мы вернём нул или ебучий нан для пустово массива например в > Яваскрипте, вам станет легче?
Вот только чтобы хотеть array в RDBMS -- надо быть дебилом и нихрена не понимать в RDBMS. Чего жэ тогда удивительного, что эту фичу в опенсорсной базе данных написал дебил? Очень ожыдаемое поведение.
Ты ещё вот на лепру бы пошёл -- и потом удивлялся, почему вокруг одни дебилы.
Как бы объяснить сестре, с чего я так ржу?
Именно для пустых массивов? Не для NULL (не знаю, есть ли такие в постгрессе)?
Да, именно для пустых. В постгрэссе есть и пустые, и NULL, они отличаются, и для обоих array_length() возвращает NULL. Это связано с тем, что там ещё array_length() смешной -- рассчитан на массивы любой размерности, просит номер размерности, длину которой подсчитать, и возвращает NULL если так или иначе не нашёл соответствующую размерность. Но всё это отборный дебилизм, конечно.
Ну это как раз понятно почему. Потому что для пустого массива он не знает есть ли такая размерность вообще. Поэтому и возвращает "не знаю", то бишь null.
нет. это не так. для пустого массива ОН ТОЧНО ЗНАЕТ что такой размерности нет. но когда я его спрашиваю СКОЛЬКО элементов по несуществующей координате, он сука обязан мне ответить НОЛЬ. потому что он точно знает что там нет элементов.
нул же он возвращает потому что: "заставб дурака богу болиться, он себе голову разобьёт"
У пустого массива размерностей вообще нет, array_ndims и array_dims точно так же возвращают для него NULL, т.е. пока в массиве пусто, про него вообще ничего сказать нельзя, black hole. Другое дело, что от этого удобнее не стало, ну так NULL вообще не очень удобная концепция. Ну и вот еще, возможно, оно и изменится.
Нет, это не так. у пустого массива размерностей НОЛЬ, (хотя не было бы ошибкой почитать размерность пустого массива единицей).
всё это изчисление размерностей не требует нула вовсе -- можно построить непротиворечивую арифметику размерностей без нулов.
Размерностей у него ноль, следовательно, ни одной размерности не существует, следовательно, понятие размер к любой размерности неприменимо -> размер NULL.
Другой вопрос, что какого чёрта там размерностей ноль, если у нас тип int[] или int[][]? Вот жэ написано, размерностей один или там размерностей две.
и ваша точка зрения тоже совершенно верна!
тоесть тут с двух совершенно ортогональных точек зрения нул неправомерен.
впрочем это разсуждение мне напомнило о разсуждении о ТИПЕ НУЛА. :) короче я окончательно понял что статью про нулы _НАДО_ переводить и публиковать.
> "пока в массиве пусто, про него вообще ничего сказать нельзя"
пожалуй это и есть корень ошибки. в массиве не пусто, и НЕ ПОКА -- он просто пустой, причём НАВСЕГДА. и про него можно сказать ВСЁ! абсолютно всё. пустой массив ОПРЕДЕЛЁН ничуть не менее любого другого массива. | |