Я использую SQL Server.У меня есть 3 таблицы:
- tblUser
- tblAudit
- tblEnum
В tblAudit есть 4 столбца:
nUserId, nID: эти два столбца указывают на tblUser
vFromValue, vToValue: эти два столбца указывают на tblEnum
Теперь мне нужно показать фактические значения из tblUser и tblEnumна основе идентификаторов, присутствующих в таблице tblAudit.Написанный мною запрос выглядит примерно так:
SELECT A.aEventID,
U.tName AS MakerChecker,
U2.tName AS OnUser,
VLE.tDisplayName AS FromValue,
VLE2.tDisplayName AS ToValue,
A.dChangeTime AS Timestamp
FROM tblAudit A INNER JOIN tblUser U ON A.nUserId = U.aUserId
INNER JOIN tblUser U2 ON A.nID = U2.aUserId
INNER JOIN tblEnum VLE ON A.vFromValue = VLE.nIndex OR (A.vFromValue IS NULL)
INNER JOIN tblEnum VLE2 ON A.vToValue = VLE2.nIndex OR (A.vToValue IS NULL)
Поскольку значения в таблице Audit для столбцов vFromValue и vToValue для некоторых строк равны нулю, эти значения будут иметь значение NULL, а не предыдущее.,Как я могу отобразить нулевые значения без изменений, изменив вышеуказанный запрос?Пожалуйста, помогите.