У меня есть две таблицы на Sql Server 2008. ownership
с 3 полями и case
с еще 3 полями, которые мне нужно объединить в поле идентификатора (bigint).
В целях тестирования я использую только одно поле из каждой таблицы. Это поле bigint и имеет значения от 1 до 170 (пока).
Мой запрос:
SELECT DISTINCT
ownership.fCase,
case.id
FROM
ownership LEFT JOIN case ON (case.id=ownership.fCase)
WHERE
ownership.dUser='demo'
Ожидалось, что это вернет 4 строки с одинаковыми значениями в обоих столбцах. Проблема в том, что последняя строка правой таблицы имеет значение null для fCase = 140. Это единственное значение выше 100.
Если я запускаю запрос без предложения WHERE, он показывает все строки в левой таблице, но значения справа появляются только в том случае, если ниже 101 в противном случае отображается нуль.
Может кто-нибудь помочь мне, я делаю что-то не так или это ограничение или ошибка?
case
строка, в которой естьid = 140
? (например: что такоеSELECT COUNT(*) FROM case WHERE id = 140
?) - person NullUserException   schedule 28.08.2011