Сегодня я наткнулся на представление в нашей базе данных, где было первое утверждение в предложении where where 1 = 1
. Разве это не должно возвращать истину для каждой записи? Зачем кому-то писать это, если он не фильтрует записи?
sql-server-2005
goric
источник
источник
Ответы:
Некоторые динамические компоновщики запросов включают это условие, так что любые «реальные» условия могут быть добавлены
AND
без проверки, какif (first condition) 'WHERE' else 'AND'
.источник
Если в вашей программе есть много точек построения операторов SQL, которые генерируют похожие запросы, вы можете пометить проверенный запрос этим трюком. Если предложение касается подсчета, вы можете использовать приведенный ниже код, чтобы вы могли извлечь
42
из журнала SQL.источник
Это обеспечивает ситуацию, которая всегда верна, поэтому она не влияет на результаты, но вы знаете, что в предложении WHERE уже есть один элемент.
источник