[英]Combine Access fields into one field given two queries
我有n個 MS Access字段,需要每行檢查一個合法單元格。 一個合法的單元格根本就沒有值“ missing”,“ unknown”; 或不為空白。 所有這些單元格都將合並為一個僅包含具有合法值的單元格的字段。
參照下表,
Name_Final
將包含這些來自Name_2010
, Name_2011
和Name_2012
合法單元格。
我已經有兩個獨立的查詢來幫助我完成這項工作,但是我需要將它們的結果合並才能獲得Name_Final
字段。
SELECT Nz(Name_2010, '') & Nz(Name_2011, '') & Nz(Name_2012, '') AS Name_Final
結果是:
過濾具有不希望的值的單元格
SELECT Name_2010 Not In ('missing', 'unknown', 'Blank(s)', ' ', Nz), Name_2011 Not In ('missing', 'unknown', 'Blank(s)', ' ', Nz), Name_2012 Not In ('missing', 'unknown', 'Blank(s)', ' ', Nz) AS Name_Final FROM Table1;
這一個返回0
, -1
或空白值所指示的NOT IN
括號中的值未指示NOT IN
parenthesis`或分別為空白值。
其輸出為:
我需要找到一種方法將這兩組查詢整合在一起,以提供Name_Final
。 請幫助SO霸主。
SELECT IIf(Name_2010 In (Null, 'missing', 'unknown', 'Blank(s)', ' '), '', Name_2010) &
IIf(Name_2011 In (Null, 'missing', 'unknown', 'Blank(s)', ' '), '', Name_2011) &
IIf(Name_2012 In (Null, 'missing', 'unknown', 'Blank(s)', ' '), '', Name_2012)
AS Name_Final
FROM Table1;
就是說,我傾向於清理數據並將所有“缺失”,“未知”或“空白”值替換為NULL,這將允許用簡單的Nz替換IIf-
UPDATE Table1 SET Name_2010 = Null WHERE Trim(Name_2010) In ('missing', 'unknown', 'Blank(s)', '');
UPDATE Table1 SET Name_2011 = Null WHERE Trim(Name_2011) In ('missing', 'unknown', 'Blank(s)', '');
UPDATE Table1 SET Name_2012 = Null WHERE Trim(Name_2012) In ('missing', 'unknown', 'Blank(s)', '');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.