Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 作为RRP左外联接的d_续订_策略 GREEN43_PROD_REPL.dbo.marketing在RRP.UniqClient=MMS.UniqEntity和RRP.ExpDate=MMS.EffectiveDate上以彩信的形式提交 其中((RRP.revieved='No')和(DATENAME(month,RRP.ExpDate)=DATENAME(month,DATEADD(month,3,GETDATE())) 和Month(getdate())_Sql_Sql Server - Fatal编程技术网

Sql 作为RRP左外联接的d_续订_策略 GREEN43_PROD_REPL.dbo.marketing在RRP.UniqClient=MMS.UniqEntity和RRP.ExpDate=MMS.EffectiveDate上以彩信的形式提交 其中((RRP.revieved='No')和(DATENAME(month,RRP.ExpDate)=DATENAME(month,DATEADD(month,3,GETDATE())) 和Month(getdate())

Sql 作为RRP左外联接的d_续订_策略 GREEN43_PROD_REPL.dbo.marketing在RRP.UniqClient=MMS.UniqEntity和RRP.ExpDate=MMS.EffectiveDate上以彩信的形式提交 其中((RRP.revieved='No')和(DATENAME(month,RRP.ExpDate)=DATENAME(month,DATEADD(month,3,GETDATE())) 和Month(getdate()),sql,sql-server,Sql,Sql Server,只是一个例子,说明读取格式化的sql是多么容易。我把OPs发布的答案格式化了一点。删除了几个额外的括号,并移动了一点逻辑,这样就简单了一点 SELECT distinct RRP.Id , RRP.UniqClient , RRP.Client , RRP.Expiring_Policies , RRP.UniqBroker , CONVERT(varchar, RRP.ExpDate, 101) AS ExpDate , RRP.NewUw

只是一个例子,说明读取格式化的sql是多么容易。我把OPs发布的答案格式化了一点。删除了几个额外的括号,并移动了一点逻辑,这样就简单了一点

SELECT distinct RRP.Id
    , RRP.UniqClient
    , RRP.Client
    , RRP.Expiring_Policies
    , RRP.UniqBroker
    , CONVERT(varchar, RRP.ExpDate, 101) AS ExpDate
    , RRP.NewUw
    , RRP.OtherContact
    , RRP.Company
    , RRP.Broker_Name
    , RRP.Reviewed
    , RRP.DateCreated
    , RRP.DateUpdated
    , RRP.EmailCreated
    , RRP.UniqProducer
    , RRP.LINES
    , CASE WHEN MMS.UniqMarketingSubmission IS NULL THEN 'No' ELSE 'Yes' END AS [MMS Created]
FROM  dbo.Reviewed_Renewal_Policy AS RRP 
LEFT OUTER JOIN GREEN43_PROD_REPL.dbo.MarketingSubmission AS MMS ON RRP.UniqClient = MMS.UniqEntity 
                                                                AND RRP.ExpDate = MMS.EffectiveDate 
where RRP.Reviewed = 'No'
AND DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 4, GETDATE()))
AND
(
    Month(getdate()) <= Month(RRP.ExpDate)
) 
OR
(
    Month(getdate()) > Month(RRP.ExpDate) 
    AND 
    Year(RRP.ExpDate) > Year(getdate())
) 
order by ExpDate ASC
选择不同的RRP.Id
,RRP.UniqClient
,RRP.客户
,RRP.到期保单
,RRP.UniqBroker
,将(varchar,RRP.ExpDate,101)转换为ExpDate
,RRP.NewUw
,RRP.OtherContact
,RRP.公司
,RRP.Broker_Name
,RRP.已审核
,RRP.DateCreated
,RRP.DateUpdated
,RRP.EmailCreated
,RRP.UniqProducer
,RRP.LINES
,当MMS.UniqMarketingSubmission为空时,则“否”或“是”结束为[MMS Created]
来自dbo。作为RRP审查了续保政策
左外连接绿色43_PROD_REPL.dbo.marketing在RRP.UniqClient=MMS.UniqEntity上作为MMS提交
并且RRP.ExpDate=MMS.EffectiveDate
其中RRP.Revieved='否'
和DATENAME(month,RRP.ExpDate)=DATENAME(month,DATEADD(month,4,GETDATE())
及
(
月(getdate())月(RRP.ExpDate)
及
年份(RRP.ExpDate)>年份(getdate())
) 
按ExpDate ASC订购

这只是一个例子,说明读取格式化sql是多么容易。我把OPs发布的答案格式化了一点。删除了几个额外的括号,并移动了一点逻辑,因此它更简单了一点

SELECT distinct RRP.Id
    , RRP.UniqClient
    , RRP.Client
    , RRP.Expiring_Policies
    , RRP.UniqBroker
    , CONVERT(varchar, RRP.ExpDate, 101) AS ExpDate
    , RRP.NewUw
    , RRP.OtherContact
    , RRP.Company
    , RRP.Broker_Name
    , RRP.Reviewed
    , RRP.DateCreated
    , RRP.DateUpdated
    , RRP.EmailCreated
    , RRP.UniqProducer
    , RRP.LINES
    , CASE WHEN MMS.UniqMarketingSubmission IS NULL THEN 'No' ELSE 'Yes' END AS [MMS Created]
FROM  dbo.Reviewed_Renewal_Policy AS RRP 
LEFT OUTER JOIN GREEN43_PROD_REPL.dbo.MarketingSubmission AS MMS ON RRP.UniqClient = MMS.UniqEntity 
                                                                AND RRP.ExpDate = MMS.EffectiveDate 
where RRP.Reviewed = 'No'
AND DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 4, GETDATE()))
AND
(
    Month(getdate()) <= Month(RRP.ExpDate)
) 
OR
(
    Month(getdate()) > Month(RRP.ExpDate) 
    AND 
    Year(RRP.ExpDate) > Year(getdate())
) 
order by ExpDate ASC
选择不同的RRP.Id
,RRP.UniqClient
,RRP.客户
,RRP.到期保单
,RRP.UniqBroker
,将(varchar,RRP.ExpDate,101)转换为ExpDate
,RRP.NewUw
,RRP.OtherContact
,RRP.公司
,RRP.Broker_Name
,RRP.已审核
,RRP.DateCreated
,RRP.DateUpdated
,RRP.EmailCreated
,RRP.UniqProducer
,RRP.LINES
,当MMS.UniqMarketingSubmission为空时,则“否”或“是”结束为[MMS Created]
来自dbo。作为RRP审查了续保政策
左外连接绿色43_PROD_REPL.dbo.marketing在RRP.UniqClient=MMS.UniqEntity上作为MMS提交
并且RRP.ExpDate=MMS.EffectiveDate
其中RRP.Revieved='否'
和DATENAME(month,RRP.ExpDate)=DATENAME(month,DATEADD(month,4,GETDATE())
及
(
月(getdate())月(RRP.ExpDate)
及
年份(RRP.ExpDate)>年份(getdate())
) 
按ExpDate ASC订购


您使用的是哪种dbms?(那里有一些特定于产品的函数…)格式正确的SQL非常容易阅读。(和写…)@jarlh我编辑它以显示我使用的是MS SQLserver@swapmeet_Lou…我对用户在此查询中选择的内容有点困惑。您使用的是哪种dbms?(这里有一些特定于产品的函数…)正确格式化的SQL非常容易阅读。(和编写…)@jarlh我编辑它是为了显示我在使用MS SQLserver@swapmeet_Lou…我对用户在此查询中选择任何内容的位置有点困惑。谢谢。我以前确实尝试过,但它当然只会返回当前年份。我尝试使用AND year(RRP.ExpDate)year(GETDATE())…这将返回正确的结果,但一旦年份发生变化,它将无法工作Hanks。我以前确实尝试过,但它当然只会返回当前年份。我尝试使用AND year(RRP.ExpDate)year(GETDATE())…这会返回正确的结果,但一旦年份发生变化,它就无法工作。我去掉了多余的选择代码。因为我可以在MSSM中正常运行查询完成完全相同的事情,添加一堆html似乎很愚蠢。您放置的3和4是一个名为“@ExpDate”的asp:参数变量…它在html端就足够了,并以完全相同的方式运行此查询。我以后不需要三个月。3个月在那里,因为正好是10月,而3个月在1月。如果是11月,我会在那里放一个2。我的问题是在2019年时只检索2020个结果,但在2019年时保留它们2020@swapmeet_Lou…如果你想然后使用
datefromparts(1+year(getdate()),1,1)
datefromparts(1+year(getdate()),2,1)
作为边界。我能够想出一个解决方案(我在下面发布),但您的也是一个很好的附加解决方案。我感谢您的帮助。我将在下面编辑我的,并添加您的,以显示它如何适合。我省去了多余的选择代码。由于我可以在MSSM中正常运行查询完成完全相同的事情,添加一堆html似乎很愚蠢。您放置的3和4是一个asp:参数va变量名为“@ExpDate”…它在html端就足够了,并以完全相同的方式运行此查询。我以后不需要三个月。3个月在那里,因为正好是10月,而3个月在1月。如果是11月,我会在那里放一个2。我的问题是在2019年时只检索2020个结果,但在2019年时保留它们2020@swapmeet_Lou…如果你想然后使用
datefromparts(1+year(getdate()),1,1)
datefromparts(1+year(getdate()),2,1)
作为边界。我能够想出一个解决方案(我在下面发布),但您的也是一个很好的附加解决方案。我感谢您的帮助。我将在下面编辑我的,并添加您的,以显示它的适用性。谢谢Sean。我试图提供帮助,并尽可能清楚地说明这个问题。我知道您的建议如何让读者更清楚。我将在下一个问题上使用您的建议。您应该遵循“友好”和“友好”整洁的格式不仅适用于问题,也适用于你写的每一个问题。这将为你和关注你的人节省大量的时间和精力。:)谢谢肖恩。我一直在尽力提供帮助,并尽可能清晰地回答问题
where RRP.Reviewed = 'No' and
      RRP.ExpDate >= datefromparts(year(dateadd(month, 3, getdate()),
                                   month(dateadd(month, 3, getdate()),
                                   1) and
      RRP.ExpDate < datefromparts(year(dateadd(month, 4, getdate()),
                                   month(dateadd(month, 4, getdate()),
                                   1) 
SELECT distinct  
           RRP.Id, RRP.UniqClient, RRP.Client, RRP.Expiring_Policies, RRP.UniqBroker, CONVERT(varchar, RRP.ExpDate, 101) AS ExpDate, 
            RRP.NewUw, RRP.OtherContact, RRP.Company, RRP.Broker_Name, RRP.Reviewed, RRP.DateCreated, 
            RRP.DateUpdated, RRP.EmailCreated, RRP.UniqProducer, RRP.LINES, CASE WHEN MMS.UniqMarketingSubmission IS NULL THEN 'No' ELSE 'Yes' END AS [MMS Created]

            FROM  dbo.Reviewed_Renewal_Policy AS RRP LEFT OUTER JOIN
            GREEN43_PROD_REPL.dbo.MarketingSubmission AS MMS ON RRP.UniqClient = MMS.UniqEntity AND RRP.ExpDate = MMS.EffectiveDate 

     where ((RRP.Reviewed = 'No') AND (DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 4, GETDATE()))) 
            AND Month(getdate()) <= Month(RRP.ExpDate)) 
            OR
            ((RRP.Reviewed = 'No') AND (DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 4, GETDATE()))) 
            AND Month(getdate()) > Month(RRP.ExpDate) AND Year(RRP.ExpDate) > Year(getdate())) 
            order by ExpDate ASC
SELECT distinct  
            RRP.Id, RRP.UniqClient, RRP.Client, RRP.Expiring_Policies, RRP.UniqBroker, CONVERT(varchar, RRP.ExpDate, 101) AS ExpDate, 
            RRP.NewUw, RRP.OtherContact, RRP.Company, RRP.Broker_Name, RRP.Reviewed, RRP.DateCreated, 
            RRP.DateUpdated, RRP.EmailCreated, RRP.UniqProducer, RRP.LINES, CASE WHEN MMS.UniqMarketingSubmission IS NULL THEN 'No' ELSE 'Yes' END AS [MMS Created]

            FROM  dbo.Reviewed_Renewal_Policy AS RRP LEFT OUTER JOIN
            GREEN43_PROD_REPL.dbo.MarketingSubmission AS MMS ON RRP.UniqClient = MMS.UniqEntity AND RRP.ExpDate = MMS.EffectiveDate 
    where ((RRP.Reviewed = 'No') AND (DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 3, GETDATE()))) 
            AND Month(getdate()) <= Month(RRP.ExpDate)) 
            OR
            ((RRP.Reviewed = 'No') AND (DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 3, GETDATE()))) AND
            datefromparts(1 + year(getdate()), 1, 1) <= RRP.ExpDate and datefromparts(1 + year(getdate()), 2, 1) >= RRP.ExpDate) 
            order by ExpDate ASC 
SELECT distinct RRP.Id
    , RRP.UniqClient
    , RRP.Client
    , RRP.Expiring_Policies
    , RRP.UniqBroker
    , CONVERT(varchar, RRP.ExpDate, 101) AS ExpDate
    , RRP.NewUw
    , RRP.OtherContact
    , RRP.Company
    , RRP.Broker_Name
    , RRP.Reviewed
    , RRP.DateCreated
    , RRP.DateUpdated
    , RRP.EmailCreated
    , RRP.UniqProducer
    , RRP.LINES
    , CASE WHEN MMS.UniqMarketingSubmission IS NULL THEN 'No' ELSE 'Yes' END AS [MMS Created]
FROM  dbo.Reviewed_Renewal_Policy AS RRP 
LEFT OUTER JOIN GREEN43_PROD_REPL.dbo.MarketingSubmission AS MMS ON RRP.UniqClient = MMS.UniqEntity 
                                                                AND RRP.ExpDate = MMS.EffectiveDate 
where RRP.Reviewed = 'No'
AND DATENAME(month, RRP.ExpDate) = DATENAME(MONTH, DATEADD(Month, 4, GETDATE()))
AND
(
    Month(getdate()) <= Month(RRP.ExpDate)
) 
OR
(
    Month(getdate()) > Month(RRP.ExpDate) 
    AND 
    Year(RRP.ExpDate) > Year(getdate())
) 
order by ExpDate ASC