У меня есть 2 таблицы, в которых содержится следующее:
Таблица 1: пациент (содержит почти всю необходимую мне информацию) Таблица 2: ProtocolLog (содержит процедуры, которые были выполнены для пациентов, перечисленных в таблице 1)
Я хочу просмотреть всех пациентов, которые имеют непогашенный остаток, но я также хочу исключить пациентов из этого списка, которые все еще имеют непогашенный баланс, НО их журнал процедур содержит специальные коды, которые идентифицируют их как случаи ортодонтии.У меня нет ни одного случая ортодонтии в моем отчете.
в Таблице 1, есть эта информация:
Patient Name | Patient Number | Estimated Balance
Jon | 5 | 120
Sara | 19 | 500
в Таблице 2:
Patient Number | Procedure CodeNum
5 | 222
5 | 223
5 | 244
5 | 80*****
19 | 80
19 | 10
, если я запускаю свой запрос и исключаю значение CodeNum, которое находится между222 и 244, я все равно получу Пациента Джона в результате запроса, потому что у него была процедура № 80, которая является обычной.Как я могу исключить Джона?
SELECT distinct patient.Fname,patient.Lname,patient.PatNum,patient.EstBalance
FROM opendental.patient,opendental.procedurelog
where EstBalance>=1
and patient.PatNum = procedurelog.PatNum
and procedurelog.CodeNum not between 222 and 244;
Я использую различные, потому что меня не волнуют значения в таблице 2, таблица 2 только помогает мне определить список процедур, которые выполнял пациент.