Пожалуйста, простите меня, если это основной вопрос, я новичок в SQL и вам нужна помощь в выполнении вычислений даты из 2 таблиц в SQL.как выполнять расчеты даты из разных таблиц?
У меня есть две таблицы (пациента и CHD) они выглядят следующим образом:
Пациент:
ID|Age|date |Alive
--------------------------
1 50 01/09/2013 Y
2 52 11/05/2015 N
3 19 20/07/2016 N
КБС:
ID|Age|indexdate
--------------------
1 50 01/08/2012
2 52 11/11/2013
3 19 10/07/2015
Таблица пациента содержит около 500000 с 2010-2016 гг., а таблица ИБС содержит около 350 000 записей с 2012-2013 гг. Что я хочу сделать, это посмотреть, сколько пациентов с ИБС умерло с 2012-2016 гг., И если они умерли, прошло 12 месяцев?
Я не знаю, как это сделать, но я знаю, что объединение необходимо на ID и мы устанавливаем где состояние с живыми, как НЕ
Окончательный выход «Y» должен выглядеть следующим образом на основе образец выше:
ID|Age|indexdate| deathdate
---------------------------
2 52 11/11/2013 11/05/2015
3 19 10/07/2016 20/07/2016
Все вопросы дайте мне знать!
РЕДАКТИРОВАТЬ: только, чтобы прояснить ситуацию, пациенты могут появляться несколько раз на столе пациента, пока они не умрут.
Благодаря
Могу ли я спросить, почему вы используете min (p.date)? каждый пациент умирает в разное время, поэтому не уверен, зачем нам нужно мин. Кроме того, мы не проверяем текущую дату, если прошло 1 год, нам нужно проверить, составляет ли разница между датой (таблица пациентов) и indexdate (таблица chd)> 1 год. Цените свою помощь! –
@lo_iQ. , , Ваш вопрос неясно, могут ли пациенты появляться несколько раз в таблице. Мне кажется, что если у вас состояние пациента («живое», «не живое»), то у вас может быть несколько строк в таблице для данного пациента. –
Да, они появляются несколько раз. Как только они умрут, они больше не появятся. –