我有 2 个表......它们基本上是相同的,除了其中一个中的列名,因为它们处理 2 个不同的名称,但是......我想要的数据在具有相同名称的列中。几乎我想要做的是......它们也需要是不同的,所以我不计算重复......我可以将它们作为单独的表......但我不能把它们放在一起......我需要它们在 1 列中,因为它是如何被发送到 C3 代码页以及它是如何读取它的……结构之前已经设置好了……并且在这样的一个存储过程中正在执行大约 5 条其他语句(我也不是设置这个的人)。所以如果这是可能的..请让我知道..如果您想看到真实的代码,我也会粘贴我的确切代码..我只是试图简化它以使其更容易理解。一世'
图 1 是当前设置的内容:
顶部是存储在表中的内容。底部是更多的结果,它基本上运行此代码以获取底部
DECLARE @id INT;
DECLARE @invest nvarchar(50);
SET @id = '7633';
SET @invest = '';
SELECT 'a' + CONVERT(nvarchar, orderfindings.risk_rating) AS cat, COUNT(DISTINCT orderfindings.prnt_id) AS stat
FROM orderheader, orderaudits, orderfindings
WHERE orderheader.id = orderaudits.orderheader_id AND orderaudits.ID = orderfindings.prnt_id
AND orderheader.id = @id AND orderfindings.risk_rating > 0 AND orderaudits.Investor_Name LIKE '%' + @invest + '%'
GROUP BY orderfindings.risk_rating
如果我想要机构而不是调查结果..只需替换它..机构和调查结果是两张表..它们在列方面几乎相同...但我希望将结果放在一起..我尝试了几种方法..但我似乎无法得到它图像 2-底部的表格是我正在寻找的更多..它将它们组合成 1:
如果订单中有发现或机构或两者兼而有之..那么它被标记为该风险等级的 1...如果它没有..那么该风险等级为 0..然后将它们加起来看看我得到了什么.. 任何帮助表示赞赏.. 如果你不明白,我会澄清我能做的;
编辑:
我一直在使用它..这个http://pastebin.com/117Z2TVh ..让它显示2列..但仍然不是正确的结果...我得到a1 = 1。 ..a2 = 1 ......所以它没有运行所有订单......或者它需要一种方法来计算它......我在case语句的开头加上了一个总和......因为计数而出错......所以我计算出来...并没有真正起作用..有什么建议吗?