我需要用sql编写一个查询

我需要用sql编写一个查询,sql,sql-server,Sql,Sql Server,编写一个查询以提供已赚保费和已赚风险敞口的总计 按公司和S160保险代码分类。仅包括2010年的数据 (2010年1月1日至2010年12月31日),等同于GE或GG的公司,以及额定状态 等于约 以下是表格和字段: Table 1a Earned Premium = ERND_PRM_AM Earned Exposures = ERND_EXPSR_DY_CN S160 Coverage Code = S160_CVRG_CD Policy Key = PLCY_KY Table 2a Rat

编写一个查询以提供已赚保费和已赚风险敞口的总计 按公司和S160保险代码分类。仅包括2010年的数据 (2010年1月1日至2010年12月31日),等同于GE或GG的公司,以及额定状态 等于约

以下是表格和字段:

Table 1a
Earned Premium = ERND_PRM_AM
Earned Exposures = ERND_EXPSR_DY_CN
S160 Coverage Code = S160_CVRG_CD
Policy Key = PLCY_KY

Table 2a
Rated State = RTD_ST_CD
Company = CMPNY_CD
Date = SNP_DT
Policy Key = PLCY_KY
这是我的答案——正确吗

Select 
    Table 1a.Earned Premium, Table 1a.Earned Exposures, Table 1a.S160 Coverage Code, 
    Table 2a.Company, Table 2a.Date, Table 2a.Rated State
From Table 1a
Inner Join Table 2a
On Table 1a.Policy Key=Table 2a.Policy Key
Where Date between 1/1/2010 and 12/31/2010, Company='GE' or 'GG', Rated State='CA';

如果您说的是SQL server,表名实际上是1a和2a,那么:

Select 
   1a.ERND_PRM_AM as [Earned Premium], 1a.ERND_EXPSR_DY_CN as [Earned Exposures], 1a.S160_CVRG_CD as [S160 Coverage Code], 
   2a.CMPNY_CD as Company, 2a.SNP_DT as [Date], 2a.RTD_ST_CD as [Rated State]
From 1a
Inner Join 2a
On 1a.PLCY_KY = 2a.PLCY_KY
Where SNP_DT between '1/1/2010' and '12/31/2010' and CMPNY_CD in ('GE', 'GG') and RTD_ST_CD = 'CA';

忽略格式糟糕的问题,这是非常简单的:

SELECT SUM(t1.ERND_PRM_AM) AS 'Total Earned Premium'
,SUM(t1.ERND_EXPSR_DY_CN) AS 'Total Earned Exposures'
,t1.S160_CVRG_CD AS 'S160 Coverage Code'
,t2.CMPNY_CD AS 'Company'
FROM Table_1a t1
INNER JOIN Table_2a t2
  ON t1.PLCY_KY = t2.PLCY_KY
WHERE SNP_DT BETWEEN '20100101' AND '20101231'
  AND CMPNY_CD IN('GE','GG')
  AND RTD_ST_CD='CA'
GROUP BY t2.CMPNY_CD, t1.S160_CVRG_CD

这听起来像是与家庭作业有关的事情。仅供参考,这样的问题是不允许的。您也没有给出您期望的示例/示例数据

这是不正确的答案你自己试过答案吗?查询结果是什么?这甚至都不是有效的SQL。答案应该是什么?没问题,还要确保你标记了你的答案,这样其他搜索者就可以找到正确的解决方案。加上我们的声誉都会提高。谢谢。嗨,恰克,我做这个是为了工作评估。很遗憾,我没有得到这份工作,但我确实使用了你的代码。哦,好吧,回到绘图板上来。对吗?哈哈,可怜虫,继续努力,祝你好运。坚持练习和学习,你很容易就能做得很好。