metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-03-12 12:00 pm

Век живи, век учись

Внезапно: жизнь заставила узнать как правильно сравнивать поля в базах данных на равенство/неравенство:
A IS NOT DISTINCT FROM B
A IS DISTINCT FROM B

[identity profile] avnik.livejournal.com 2011-03-12 12:12 pm (UTC)(link)
SA триггеры не генерит, а в запросах делает (видимо) только DISTINCT в селектах на колонки. Там кодогенератор из собственного DSL в SQL с кешированием и прочим адом. Я погрепал DISTINCT и посмотрел вокруг (аккуратно -- чтобы мозг не расплавился)

[identity profile] metaclass.livejournal.com 2011-03-12 12:13 pm (UTC)(link)
Тут слово DISTINCT совершенно в разных контекстах применяется, в плане множеств(в запросах) и в плане значений (у меня).

[identity profile] avnik.livejournal.com 2011-03-12 12:16 pm (UTC)(link)
Ну потому у меня и случился разрыв шаблона, и я полез задавать вопросы и копаться в потрохах SA