- 1
echo "Дней до освобождения: " . $freedays, "<br>";
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+164
echo "Дней до освобождения: " . $freedays, "<br>";
В жопу унификацию. Программист не справился с задачей поставить два одинаковых знака - точки или запятые - в одной строке.
Но, при этом, в MySQL || - это дизъюнкция, чтобы не запутаться.
Смело с разбегу ей бей между ног
Ай не обманывай людей! & же.
В бейсике, sql обычно можно конкатить и плюсом (хотя не скажу обо всех диалектах). Сделано это для легкой адаптации быдлеца.
Однако умудрённые граблями люди юзают a & b & c или a || b || c
И случайно выносят все данные из таблицы к хуям, потому что || это logic or.
Умудрённые граблями люди теперь читают о каждом операторе перед первым использованием...
Только в наиболее мудацких бд типа мускула.
Там для буквоедов уточнение что мой пост неприменим∀ диалектам бейсика и скула.
В GW и в Quick Basic использовался плюсик, а с амперсанда начинались шестнадцатеричные константы.
По ебалу?
[/Очевидное и не смешное]
Интересно стало, какого хрена она называется dual, при том, что в ней всего одна запись. Оказалось, что изначально это была табличка с двумя строками, чтобы джойнить ее к другим таблицам тем самым удваивая количество строк в результате...
The name, DUAL, apt for the process of creating a pair of rows from just one. The original DUAL table had two rows in it (hence its name), but subsequently it only had one row.
кроме редких исключений
dual далеко не самая большая неприятность
больше напрягает:
- отсутствие сахарка в виде многострочного инсерта через values: приходится много копипастить в виде
- отсутствие limit: приходится оборачивать запрос во внешний запрос с where rownum <= X и не дай бог тебе оказаться в ситуации, когда этот обернутый запрос должен был быть correlated subquery - ибо передача значений родительского запроса в подзапрос работает строго до первого уровня подзапроса (это ограничения стандарта): приходится выкручиваться, перенося подзапрос в джойны где использовать аналитические функции типа rank()...,
в общем, нехватка одного сраного лимита сильно портит кровь
но зато в слонике негров линч нет upsert, а это очень частая и востребованная операция
А в информиксе вместо него унылый first (но хоть так).
> нет upsert
И это печалит. Причем в слонике, емнип, какие-то фундаментальные проблемы в архитектуре были, которые не дают его запилить.
Люди заслуженно получают такую з/п за то что мучаются, изобретая всякие обходные пути.
Поддерживаю этого господина. Функция с понятным именем всегда лучше чем очередной сахарный значок делающий непонятно что.
Я всегда это говорил, и повторю: AND лучше &&, OR лучше ||, XOR лучше ^. Текст лучше и читабельнее нагромождения непонятных значков.
Только называется она concat.
Всё же короткая схема используется чаще чем полная.
А вычисление всех операндов полностью имеет смысл, только когда в самом вычислении зарыт сайд-эффект. Что в большинстве случаев неочевидное говно.
Потому я сделал бы (a OR b) для логических только по короткой схеме. И функцию OR(a,b) для побитовых и полных вычислений.
Так как аргументы функции вычисляются до её вызова, то очень легко запомнить как ведет себя конструкция.
Социалка для тюрьмы?
>унификацию
Не надо ставить их в одном посте.