选择逻辑运算符作为子查询的查询

时间:2014-10-17 20:25:01

标签: sqlite

我想在SQLite中的下水道结构表(S_Structures)上运行条件选择查询。该表包含以下列:struct_type(结构类型)和Year(构造年份)。

选择将基于结构类型和结构年龄,我想我已经整理了类型选择位,关于年龄,我打算从当地时间扣除年份。这一切都很好,但是如何将逻辑运算符定义为指定年龄范围的子查询:2&lt;年龄<= 5。

 Select [Year],[Struc_Type]
 FROM [S_Structures]
 WHERE [Struc_Type] NOT IN 
 ("Manhole", "Rodding Eye", "Dummy",
   "End Manhole", "T-Piece", "Sub-  Catchment", "Top End");
 AND WHERE (strftime('%Y','now') - Year) > '2' 
 AND (strftime('%Y','now') - Year); <= '5';

1 个答案:

答案 0 :(得分:0)

子查询将在括号中包含一个额外的SELECT。

只允许一个WHERE子句。

只需使用BETWEEN operator

SELECT [Year], [Struc_Type]
FROM [S_Structures]
WHERE [Struc_Type] NOT IN ('Manhole', 'Rodding Eye', 'Dummy', 'End Manhole',
                           'T-Piece', 'Sub-Catchment', 'Top End')
  AND (strftime('%Y','now') - Year) BETWEEN 3 AND 5;