Я думаю, все, что вам нужно, это добавить это в конец вашего запроса:
where g1.Group1=1 and g2.Group2=1
Обратите внимание, что вы «рисуете» информацию group1 / 2 из таблиц подзапросов, которые возвращают NULL, когда [ 111] отфильтровывает их.
Также обратите внимание, что в указанном утверждении CREATE TABLE
отсутствует 4-й столбец с нулями ...
Один из вариантов - CalendarEvent
, чтобы было очевидно, что это реальный - мировое событие, привязанное к заданной дате.
Обычно я бы рекомендовал функцию, но она тоже имеет особое значение в контексте программного обеспечения. ;)
Случай может быть хорошим синонимом.
В тезаурусе перечисляются следующие синонимы слова событие :
авария, действие, действие, пришествие, приключение, роман, появление, бизнес, бедствие, случай, катастрофа, праздник, церемония, шанс, обстоятельство, совпадение, конъюнктура, кризис, поступок, развитие, аварийная ситуация, эпизод, опыт, подвиг, факт, функция, праздник, инцидент, стык, чудо, материя, веха, чудо, несчастье, несчастье, ошибка, случай, возникновение, переход, фаза, явление, затруднительное положение, продолжение, сдвиг, ситуация, история, вещь *, прилив, транзакция, триумф, поворот, чудо
Несомненно, одного из них будет достаточно ... если нет, вы можете добавить или обернуть слово событие, чтобы оно не было ключевым словом. Что-то вроде @event или [event], хотя я должен сказать, что мне лично не нравится эта практика, хотя она синтаксически допустима.
Вы могли бы назвать это «Свиданием». Вы также можете просто придумать слово. Если это ключевая концепция в вашем домене, вы можете сократить одно из других предложенных имен. Например:
CalenderEvent
становится Calvent
SocialEvent
становится Socent
RealWorldEvent
становится Revent
HumanActivity
становится HAct
Эти быстрые примеры могут быть ужасными примерами, но они короткие, не противоречат названиям языков или библиотек и очень быстро станут реальными значимыми словами для вас и ваших коллег, если вы будете часто с ними работать.
Возможно, «Дело» или «Пришествие» - вы также можете проверить тезаурус:
Я понимаю, что вы хотите избежать путаницы с событиями в программном смысле, но я считаю, что, возможно, вам следует использовать наиболее очевидное имя; программы в свой домен, и все останется читабельным, простым в разработке и обслуживании.
Лучший способ сравнить строку
в C # - это использовать a.Equals (b)
, где a и b - строки. Это лучший способ сравнения строк, поскольку он сравнивает значения объектов a и b и не зависит от ссылки на объекты.
Если вы собираетесь использовать символ " ==
" , результат будет одинаковым, если оба объекта имеют одинаковую ссылку, но возникнет проблема, если у них разные ссылки и имеют одинаковое значение.
Метод compareTo
- лучший способ использовать, если вы проверяете, предшествует ли другая строка, следующая за ней или появляется в той же позиции другой строки, в которой она вернет отрицательное значение. значение, положительное значение или нулевое значение соответственно.