2010-12-02 146 views
0

我有一个非常微妙的问题,我无法解决它,直到现在。 让我们举个例子来更好地说明问题:查询变换和数据透视

我有一个表: 随着字段:ID,名称,选项1,Option1_Value,选项2,Option2_Value,选项3,Option3_Value

我想查询显示如下:

ID  Name  Reason 
1  Clark  Option1 doesn't match, Option2 doesn't match 
2  Stefan Option3 doesn't match 
3  Sandra (No errors: well just ignore this line) 
4  Steven Option2 doesn't match 

那么是什么做的是:对于每一个选项字段,做一次检查,然后打印选项(那将读取和使用外部表比较请将option_value查询)之后不匹配,但在一个f将其用作错误输出字段。

使用Transform和Pivot可以实现这个功能吗? 如果是这样,请你提供一些提示,并告诉我应该如何使用它们? 如果不是,是否有其他选择?或者,也许我可以做VBA的一面?

预先感谢您家伙 Miloud

回答

1

你的表已连续三个选项,所以怎么样:

SELECT ID, Name, 
    IIf(Option1_Value<>"Something","Option1 dosn't match", 
     IIf (Option2_Value<>"Something","Option2 dosn't match", 
      IIf(Option3_Value<>"Something","Option3 dosn't match","No errors"))) 
    As Reason 
FROM Table 

它是不是从你的文章很清楚什么样的选项不匹配,也不清楚Option和Option_Value有什么区别。

+0

老兄!你摇滚世界!我完全忘记了IIF条款!非常感谢你,我会给它一个机会,并回复你,并验证答案,如果它解决了我的问题(它应该:P)!真的非常感谢! – CoolStraw 2010-12-02 11:46:10