Good morning. For some time I struggled with this problem, and I can not wrap myself around it.
So, I have two tables in my database
tblDateTrans
CREATE TABLE [dbo].[tblDateTrans](
[Date] [smalldatetime] NOT NULL,
)
This table is an external calendar table that contains all dates from 01/01/2007 to 01/01/2011, also contains additional information, such as information about the holiday, the period of the company, etc. But this is not an issue for this.
My second table
tblSurveySession
CREATE TABLE [dbo].[tblSurveySession](
[surveySessionID] [int] IDENTITY(1,1) NOT NULL,
[guestID] [int] NULL,
[surveyID] [int] NOT NULL,
[FK_StoreId] [int] NULL,
[surveyCompletedDate] [datetime] NULL
)
This table contains a list of polls sent out and completed by our guests over a period of time. FK_StoreId is the business unit identifier for the company, and surveyCompletedDate contains only dates and times.
- , LEFT OUTER JOIN tblDateTrans, . :
SELECT tblDateTrans.Date, dbo.tblSurveySession.surveySessionID, dbo.tblSurveySession.FK_StoreId
FROM OPENQUERY([APOLLO], 'select Date FROM apollo.nhcglobal.dbo.tblDateTrans') AS tblDateTrans LEFT OUTER JOIN
dbo.tblSurveySession ON tblDateTrans.Date = dbo.tblSurveySession.surveyCompletedDate
WHERE (tblDateTrans.Date >= '1/1/2010') AND (tblDateTrans.Date <= '2/1/2010') AND (dbo.tblSurveySession.FK_StoreId = 4)
:
Date surveySessionID FK_StoreId
2010-01-01 00:00:00.000 12702 4
2010-01-01 00:00:00.000 12736 4
2010-01-01 00:00:00.000 12456 4
2010-01-03 00:00:00.000 12662 4
2010-01-04 00:00:00.000 12660 4
2010-01-05 00:00:00.000 12510 4
2010-01-05 00:00:00.000 12889 4
2010-01-24 00:00:00.000 13751 4
2010-01-25 00:00:00.000 13793 4
2010-01-28 00:00:00.000 13958 4
2010-01-30 00:00:00.000 14059 4
2010-01-31 00:00:00.000 14139 4
, :
Date surveySessionID FK_StoreId
2010-01-01 00:00:00.000 12702 4
2010-01-01 00:00:00.000 12736 4
2010-01-01 00:00:00.000 12456 4
2010-01-02 00:00:00.000 NULL NULL
2010-01-03 00:00:00.000 12662 4
2010-01-04 00:00:00.000 12660 4
2010-01-05 00:00:00.000 12510 4
2010-01-05 00:00:00.000 12889 4
2010-01-06 00:00:00.000 NULL NULL
2010-01-07 00:00:00.000 NULL NULL
2010-01-08 00:00:00.000 NULL NULL
2010-01-09 00:00:00.000 NULL NULL
2010-01-10 00:00:00.000 NULL NULL
2010-01-11 00:00:00.000 NULL NULL
2010-01-12 00:00:00.000 NULL NULL
2010-01-13 00:00:00.000 NULL NULL
2010-01-14 00:00:00.000 NULL NULL
2010-01-15 00:00:00.000 NULL NULL
2010-01-16 00:00:00.000 NULL NULL
2010-01-17 00:00:00.000 NULL NULL
2010-01-18 00:00:00.000 NULL NULL
2010-01-19 00:00:00.000 NULL NULL
2010-01-20 00:00:00.000 NULL NULL
2010-01-21 00:00:00.000 NULL NULL
2010-01-22 00:00:00.000 NULL NULL
2010-01-23 00:00:00.000 NULL NULL
2010-01-24 00:00:00.000 13751 4
2010-01-25 00:00:00.000 13793 4
2010-01-28 00:00:00.000 13958 4
2010-01-30 00:00:00.000 14059 4
2010-01-31 00:00:00.000 14139 4
, LEFT OUTER JOIN NULLS , surveySessionID FK_StoreIds. , . !