Некоторые записи не найдены в виде - PullRequest
0 голосов
/ 14 января 2012

У меня в настоящее время есть это представление, как описано ниже. Проблема в том, что я не могу найти номер квитанции, начинающийся с 65, но вижу номер с 20. В чем может быть проблема.

    SELECT     dbo.Bio_Data.Salutation, dbo.Bio_Data.FirstName, dbo.Bio_Data.MiddleInitial, dbo.Bio_Data.LastName, dbo.Bio_Data.birthPlace, CONVERT(varchar(10), 
                      dbo.Bio_Data.BirthDate, 103) AS DOB, dbo.Bio_Data.Occupation, dbo.Bio_Data.Nationality, dbo.Bio_Data.Address, dbo.Bio_Data.PermanentAddress, 
                      dbo.Bio_Data.photo, dbo.Bio_Data.gender, dbo.[Document].ValidityFrom, CONVERT(varchar(10), dbo.[Document].ExpirationDate, 103) AS ExpDate, dbo.Bio_Data.NIN, 
                      dbo.Bio_Data.fingerprintImage, dbo.Bio_Data.NextOfKin, dbo.Bio_Data.NationalityAtBirth, dbo.Bio_Data.MaritalStatus, dbo.Bio_Data.receiptNo, 
                      dbo.Bio_Data.NextOfKinAddress, dbo.[Document].DocumentTypeID, dbo.Bio_Data.SigIDNumber, dbo.Bio_Data.BloodType, dbo.[Document].DataEntryCompleted, 
                      dbo.[Document].CardPrinted, dbo.[Document].CardNumber, dbo.[Document].CPVerified, dbo.[Document].CPVerifiedBy, dbo.[Document].DEVerified, 
                      dbo.[Document].DatePrinted, dbo.[Document].DateModified
FROM         dbo.Bio_Data INNER JOIN
                      dbo.[Document] ON dbo.Bio_Data.NIN = dbo.[Document].DocumentHolderNIN AND dbo.Bio_Data.receiptNo = dbo.[Document].ReceiptNo
WHERE     (dbo.Bio_Data.ApprovalStatus = 'Approved') AND (dbo.Bio_Data.photo IS NOT NULL) AND (dbo.Bio_Data.fingerprintImage IS NOT NULL) AND 
                      (dbo.[Document].CardPrinted IS NULL) AND (dbo.[Document].ReceiptNo LIKE '20%' OR
                      dbo.[Document].ReceiptNo LIKE '65' OR
                      dbo.[Document].ReceiptNo LIKE '51%' OR
                      dbo.[Document].ReceiptNo LIKE '45%')

1 Ответ

3 голосов
/ 14 января 2012
dbo.[Document].ReceiptNo LIKE '65'

Должно быть

dbo.[Document].ReceiptNo LIKE '65%'

Без подстановочного знака % он ничего не будет соответствовать после 65. Таким образом, он найдет записи, которые являются 65, но не записи, которые просто начинаются с 65.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...