| Результаты опроса: Как лучше оформлять несколько условий в select where? | |||
| Я предпочитаю указывать операторы до условия |
|
27 | 60.00% |
| Я предпочитаю указывать операторы после условия |
|
15 | 33.33% |
| Нет предпочтений: иногда делаю так, иногда иначе |
|
3 | 6.67% |
| Не знаю/Мне все равно |
|
0 | 0% |
| Голосовавшие: 45. Вы ещё не голосовали в этом опросе | |||
|
|
Опции темы |
|
|
|
|
#1 |
|
Ищущий знания...
|
Цитата:
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
|
|
|
#2 |
|
Участник
|
Вы удивитесь, но я предпочитаю ставить && слева, а || справа. (Если кто-то хочет пофлудить, то это отличная тема для флуда
). Аргументы:- && слева - не требует дополнительного выравнивания - && слева - удобнее вставлять, убирать и комментировать условия - && слева, а || справа - улучшает восприятие, и уменьшает вероятность ошибки при последующем возможном изменении условия (!). Знаков && как правило много, а знак || как правило один, поэтому проблем с выравниванием с ним не возникает.. Если пишу сам с нуля - ставлю слева. Если модифицирую код, где стоят справа - то не меняю (ну разве что если условие сильно запутанное или я его сильно меняю). А еще я предпочитаю переносить "точку с запятой" отдельно на последнюю строку. Хотя иногда не делаю от лени. Аргументы для переноса: - удобнее вставлять дополнительную строку в условие - удобнее убирать (удалять или комментировать) последнюю строку в условии - дополнительная строка между этим и следующим оператором, содержашая только одну точку с запятой, улучшает визуальное восприятие кода |
|
|
|
|
#3 |
|
Участник
|
а можно попросить отформатировать третий пример из первого в этой ветке сообщения.
любопытно было бы посмотреть |
|
|
|
|
#4 |
|
Участник
|
Цитата:
X++: && RContractTable.RContractAccount == bankClientPayment_RU.RContractAccount && RContractTable.RContractCode == bankClientPayment_RU.RContractCode X++: if (X.value()) Y = PurchStatus::Invoiced; else Y = PurchStatus::Received; Последний раз редактировалось Zabr; 23.06.2011 в 22:58. |
|
|
|
|
#5 |
|
Участник
|
Цитата:
Сообщение от Zabr
Wamr меня опередил. В точности так. С той поправкой, что "текущее ощущение прекрасного" как правило заставляет выровнять знаки равенства:
X++: && RContractTable.RContractAccount == bankClientPayment_RU.RContractAccount && RContractTable.RContractCode == bankClientPayment_RU.RContractCode ![]() X++: && ! RContractTable.RContractAccount X++: && RContractTable.RContractAccount == '' |
|
|
|
|
#6 |
|
Moderator
|
mazzy, а можно синхронизировать понятия "вариант 1" и "вариант 2" из стартового сообщения с понятиями "до условия" и "после условия" ? например, явно прописать "вар 1" и "вар 2" в пунктах голосования, а то сейчас мне кажется, что они перекрестились (наверное, торможу к вечеру и к концу недели).
Мой выбор будет: where (...) && (...) && (...) это значит в какой пункт надо ткнуть? Спасибо. |
|
|
|
|
#7 |
|
Участник
|
|
|
|
|
|
#8 |
|
Moderator
|
Одно время даже страдал таким выпендражем, как вставка в строку c where фиктивного условия типа where 1==1 или where true. В этом случае все реальные условия ниже единообразно начинались с && - было удобно комментировать условия в процессе отладки.
|
|
|
|
|
#9 |
|
Участник
|
Вот и я тоже не понял, пока mazzy только что не разъяснил. Почему написано "после", когда оно "до"?
Ну, в смысле, в одной строке "до". Хотя, если "после" - это после первого условия, то как тогда понимать "до"? Ведь до первого условия поставить ничего нельзя. Совсем запутался. ![]() У меня почему-то сильное подозрение, что большинство проголосовало не так, как они работают на самом деле по причине непонятности текста пунктов голосования. Я проголосовал только что, после четкого разъяснения чему же соответствуют пункты. |
|
|
| Теги |
| select, как правильно, оформление кода, условия |
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| select в X++ и список значений в условии where | 20 | |||
| QueryBuildRange в select.. where | 11 | |||
| Разница NotInTTS и Found | 6 | |||
| Вопрос про Demand Planner | 4 | |||
| select * where ... | 10 | |||
| Опции темы | Поиск в этой теме |
| Опции просмотра | |
|