SQL Server/XML:更改嵌套查询结果的级别
有人能告诉我如何更改以下内容,以便嵌套查询(SQL Server/XML:更改嵌套查询结果的级别,sql,sql-server,xml,stored-procedures,nested-queries,Sql,Sql Server,Xml,Stored Procedures,Nested Queries,有人能告诉我如何更改以下内容,以便嵌套查询(items)的结果显示在dateRange下一个级别,而不是在同一级别上(这是我目前得到的) 我的SQL: SELECT A.dateRange, ( SELECT B.item, ( SELECT COUNT(*)
items
)的结果显示在dateRange
下一个级别,而不是在同一级别上(这是我目前得到的)
我的SQL:
SELECT A.dateRange,
(
SELECT B.item,
(
SELECT COUNT(*) AS volume
FROM LogEsc C
WHERE C.policy = B.item
AND C.EID LIKE 'PE%'
AND C.dateEsc LIKE A.dateRange + '%'
FOR XML PATH(''), ELEMENTS, TYPE
)
FROM @temp2 B
ORDER BY B.ranking, B.item
FOR XML PATH(''), ELEMENTS, TYPE
) AS items
FROM @temp A
FOR XML PATH(''), ELEMENTS, TYPE
<dateRange>2014-04</dateRange>
<items>
<item>EIA</item>
<volume>17</volume>
<item>CG</item>
<volume>12</volume>
<item>T</item>
<volume>10</volume>
<item>AD</item>
<volume>9</volume>
<item>IR</item>
<volume>9</volume>
<item>AS</item>
<volume>8</volume>
<item>A</item>
<volume>8</volume>
<item>FS</item>
<volume>6</volume>
<item>AP</item>
<volume>5</volume>
<item>DG</item>
<volume>5</volume>
</items>
我当前的XML:
SELECT A.dateRange,
(
SELECT B.item,
(
SELECT COUNT(*) AS volume
FROM LogEsc C
WHERE C.policy = B.item
AND C.EID LIKE 'PE%'
AND C.dateEsc LIKE A.dateRange + '%'
FOR XML PATH(''), ELEMENTS, TYPE
)
FROM @temp2 B
ORDER BY B.ranking, B.item
FOR XML PATH(''), ELEMENTS, TYPE
) AS items
FROM @temp A
FOR XML PATH(''), ELEMENTS, TYPE
<dateRange>2014-04</dateRange>
<items>
<item>EIA</item>
<volume>17</volume>
<item>CG</item>
<volume>12</volume>
<item>T</item>
<volume>10</volume>
<item>AD</item>
<volume>9</volume>
<item>IR</item>
<volume>9</volume>
<item>AS</item>
<volume>8</volume>
<item>A</item>
<volume>8</volume>
<item>FS</item>
<volume>6</volume>
<item>AP</item>
<volume>5</volume>
<item>DG</item>
<volume>5</volume>
</items>
2014-04
环境影响评价
17
CG
12
T
10
公元
9
红外光谱
9
作为
8.
A.
8.
财政司司长
6.
美联社
5.
危险品
5.
非常感谢您在这方面的帮助,Mike。将
更改为项目
改为为[日期范围/项目]
谢谢你!这会移动dateRange下的项目,但所有项目都在一行中。有没有办法做到这一点,但让每个项目都显示在单独的一行中(项目下方)?`不确定“一行中”是什么意思。看起来我实际上可以处理这个问题。让我再做一些测试。这非常有效-非常喜欢这种方法!非常感谢!