2015-02-24 55 views
0

我有一系列5个变量(来自同一张表)。我希望通过查询向我展示参与者谁在至少有一个价值的变量。即,如果所有5个变量都是空白的,则不显示该参与者。我怎么能这样做呢?在多个变量中显示结果访问查询

SELECT [Patient Information].MRN, [Patient Information].[MRI_Results(1)], [Patient Information].[MRI_Results(2)], [Patient Information].[Blood_Results(Base)], [Patient Information].[Blood_Results(FU1)], [Patient Information].[Blood_Results(FU2)], [Patient Information].[Blood_Results(FU3)] 
FROM [Patient Information] 
ORDER BY [Patient Information].[MRI_Results(1)] DESC , [Patient Information].[MRI_Results(2)] DESC , [Patient Information].[Blood_Results(Base)] DESC , [Patient Information].[Blood_Results(FU1)] DESC , [Patient Information].[Blood_Results(FU2)] DESC , [Patient Information].[Blood_Results(FU3)] DESC; 

回答

2

一个简单的“WHERE”子句可以解决这个问题。你只要有一个你想保留记录的值就可以使用OR运算符。

根据你的价值观是什么,你可能需要改变语法(即“不ISNULL()”而不是“不为空”),所以这可能需要一些小的调整,但应该让你在正确的方向。

SELECT [Patient Information].MRN, [Patient Information].[MRI_Results(1)], 
     [Patient Information].[MRI_Results(2)], 
     [Patient Information].[Blood_Results(Base)], 
     [Patient Information].[Blood_Results(FU1)], 
     [Patient Information].[Blood_Results(FU2)], 
     [Patient Information].[Blood_Results(FU3)] 
FROM [Patient Information] 
WHERE [Patient Information].MRN IS NOT NULL 
    OR [Patient Information].[MRI_Results(1)] IS NOT NULL 
    OR [Patient Information].[MRI_Results(2)] IS NOT NULL 
    OR [Patient Information].[Blood_Results(Base)] IS NOT NULL 
    OR [Patient Information].[Blood_Results(FU1)] IS NOT NULL 
    OR [Patient Information].[Blood_Results(FU2)] IS NOT NULL 
    OR [Patient Information].[Blood_Results(FU3)] IS NOT NULL 

ORDER BY [Patient Information].[MRI_Results(1)] DESC , 
     [Patient Information].[MRI_Results(2)] DESC , 
     [Patient Information].[Blood_Results(Base)] DESC , 
     [Patient Information].[Blood_Results(FU1)] DESC , 
     [Patient Information].[Blood_Results(FU2)] DESC , 
     [Patient Information].[Blood_Results(FU3)] DESC; 
+0

Perrrfect。谢谢:)我不知道如何编写SQL代码,但我无法弄清楚如何在无需编写代码的情况下在Access中实现WHERE函数 – 2015-02-24 16:12:29