深入研究SQL并看到了我喜欢的报告格式,并希望这是一个正确的论坛。我熟悉基本的选择语句和分组,但我对如何执行此操作或是否可以使用单个数据表感到困惑。
以下是我所拥有的一张桌子的样本。 表:
Item Loc Frozen Scanned Adj
1457481 85 0 1 1
1457481 85 0 1 1
1457481 25 1 1 0
1457481 25 1 1 0
1457481 35 1 1 0
1457481 45 1 1 0
Here is the format I would like to show:
Item GoodLoc Adj
1457481 2@25 2@85
1@35
1@45
如果不加入其他表格,这是否可行?非常感谢任何帮助。
答案 0 :(得分:0)
如果没有问题的更多细节,这只是猜测,但这是一个可能的解决方案:
假设表:
CREATE TABLE Items
(
item INT,
Loc INT,
Frozen BIT,
Scanner BIT,
Adj BIT
)
试
SELECT DISTINCT
Item,
CASE
WHEN Frozen = 0
THEN NULL
ELSE CONVERT(VARCHAR(5),COUNT(Loc) OVER (PARTITION BY Loc)) + '@' + CONVERT(VARCHAR(5),Loc)
END As GoodLoc,
CASE
WHEN Adj = 0
THEN NULL
ELSE CONVERT(VARCHAR(5),COUNT(Adj) OVER (PARTITION BY Adj)) + '@' + CONVERT(VARCHAR(5),Loc)
END As Adj
FROM Items
ORDER BY GoodLoc DESC
正如其他人所说的那样,您似乎正在尝试呈现您应该在表示层(SSRS)而不是管理工作室中执行的数据