Я считаю, что я совершил ошибку новобранец с последним соединением, но я не вижу, что это такое. Код работал до тех пор, пока мне не понадобилось добавлять последнюю запись, записанную в таблице DONCOMMS. (Эта таблица содержит все сообщения для каждого донора). Теперь я получаю 3 повторяющиеся строки для каждой записи из первой таблицы.Ошибка новичков с присоединением
В первоначальном отчете показаны все донорские обязательства от DON0010 и ссылки на описание области и донора из таблиц AREA и DON0001 соответственно. Теперь я хочу узнать последнее сообщение, найденное в DONCOMMS для каждого залога, найденного в DON0010.
select
pl.[PLEDGE_NO]
,d1.[DONOR_NO]
,rtrim(pl.DONOR) DONOR
,d1.[CONTACT_NAME]
,d1.[AREA1]
,a1.[DESCRIPTION]
,pl.[AMOUNT]
,pl.[AMOUNT_RECVD]
,pl.[TYPE]
,ISNULL(t2.[COMM_TYPE],'') AS COMM_TYPE
,ISNULL(t2.[REFERENCE],'') AS REFERENCE
,ISNULL(t2.[DETAIL],'') AS DETAIL
,replace(isnull(convert(varchar, t2.[DATE], 103),''),'01/01/1753','') COMMS_DATE
,ISNULL(t2.[CONTACT],'') AS CONTACT
from don0010 pl
left join DON0001 d1 on pl.[DONOR] = d1.[DONOR]
left join AREA1 a1 on d1.[AREA1] = a1.[AREA]
**left join (Select * from doncomms dc where dc.DATE = (SELECT MAX(DATE) FROM doncomms WHERE DONOR_NO = dc.DONOR_NO) and ENTITY = 'C') t2
on t2.[DONOR_NO] = d1.[DONOR_NO]**
Какие данные относятся к донкам? Нам нужно что-то большее, чем объяснение 'this doesnt work'. Пожалуйста, прочитайте [** How-to-Ask **] (http://stackoverflow.com/help/how-to-ask) \t \t И вот отличное место для [** START **] (http : //spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/), чтобы узнать, как улучшить качество вопроса и получить лучшие ответы. –
Не могли бы вы предоставить данные образца для табличных донков –