трюк SQL для чтения данных как true вместо false - PullRequest
0 голосов
/ 18 октября 2018

Я искал повсюду в Интернете, прежде чем спросить:

Я самоучка, как создать отчет, который облегчит работу моих коллег.Я хотел получить отчет для клиентов, которые никогда не посещали.Мы используем last_bill_svc_date, но проблема, с которой я столкнулся, заключалась в том, что существует определенный тип посещения, который не подлежит оплате из-за того, что клиент платит за себя.

Есть ли способ заставить меня думать, что тип посещения является верным для оплачиваемой даты обслуживания?

Я использую две разные таблицы и надеюсь, что это все, что мне нужно, чтобы получить отчет, который никогда не посещался.У меня есть 17 идентификационный номер типа посещения, который мне нужен, чтобы быть верным для оплаты за все время.

Я использую Custom AD Hoc, предоставленный Credible для электронных медицинских карт. "Query builder 2.0" - это то, что я использую.

Любая помощь очень ценится, и я буду разъяснять как можно лучше.Моя цель - показать дату последнего оплачиваемого обслуживания равной нулю, чтобы я мог подсчитать, сколько членов еще не посещали центры.

РЕДАКТИРОВАТЬ

I 'Я не совсем уверен, как показать пример, но я сделаю все возможное.

client_id    first_name    last_name    last_bill_svc_date
--------------------------------------------------
1              A-firstname A-lastname    Null  
2              B-firstname B-lastname    Null  
3              C-firstname C-lastname    Null  
4              D-firstname D-lastname    Null  
5              E-firstname E-lastname    Null  
6              F-firstname F-lastname    Null  
7              G-firstname G-lastname    Null  
8              H-firstname H-lastname    Null  
9              I-firstname I-lastname    Null

Я действительно смог вытащить точную запись выше, но она игнорирует запись с самооплачиваемым типом посещения.

Однажды я использовал оператор WHERE, как в

Where (ClientVisit.visittype_id In ('514', '519', '527', '533', '509',
  '500', '528', '540', '529', '511', '506', '513', '545', '530', '510', '512',
  '507') And Clients.client_status = 'active')

Тип посещения - это тот, на котором я хотел бы сосредоточиться, но, к сожалению, он фокусируется на оплачиваемом типе посещения и игнорируетоплачиваемое.Я хотел иметь возможность заставить SQL читать определенный тип посещения, чтобы быть оплачиваемым, несмотря ни на что.Я изо всех сил пытаюсь выяснить, из какого столбца мне нужно собрать информацию, поскольку в пользовательском AD HOC Credible есть таблицы на 11 страниц.На данный момент я использую две таблицы: Clients и ClientVisit

РЕДАКТИРОВАТЬ Часть вторая

    Select Clients.client_id As client_id,
  Clients.last_name,
  Clients.first_name,
  Clients.last_bill_svc_date
From Clients
Where Clients.client_id In (Select ClientVisit.client_id
  From ClientVisit) And Clients.client_status = 'active'

Это код, который у меня есть в списке спомощь друга.Он показал результат 47 участников, которые не посещали ни один из центров.В электронной таблице я только что показал BLANK-результат для last_bill_svc_date.

Я сделал отчет из «Отчета о расширенном поиске», предоставленный в Credible, где я выбираю типы столкновений, которые, как я знаю, являются оплачиваемыми.Хотя я знаю, что придерживаться расширенного поискового отчета, вероятно, лучший путь.Причина, по которой я переключился на Export Tool, где я могу запустить отчет из SQL Query Builder 2.0, потому что я смогу показать его только основной команде клиента, а не делать это вручную, когда я прохожу отчет расширенного поиска.

Результат, который я хочу увидеть, выглядит следующим образом:

Имя и фамилия клиента,

Дата начала клиента (Итак, мы знаем, как долго участник был активным участникоми до сих пор не посещали)

последняя оплачиваемая дата обслуживания (я отфильтрую ее до NULL),

Основная команда (У каждого клиента может быть только одна основная команда, но ониможет быть назначен на несколько команд).

Я понял, что идентификатор посещения 528 имеет большую самооплату, что вынуждает тип посещения не оплачиваться в Credible.Именно тогда я хочу заставить его читать его так, как будто идентификатор '528' оплачивается, даже если он утверждает, что он не подлежит оплате.

Еще одна причина, по которой вы хотите указать тип посещения, потому что мы предоставляем платные телефонные услуги, где мы можем связаться с клиентами.Понятно, что это не считается посещением клиентом одного из центров.

Должно быть что-то настолько простое, чтобы заставить работать так, как я хочу видеть.В противном случае мне придется принять и продолжить использовать функцию расширенного поиска.

...