为SQLite3创建动态查询

时间:2011-01-24 04:27:37

标签: sqlite nested union sql

我在数据库中有2个表。

Table2具有Table1

所需的值

实施例

表1包含以下字段

名称 FoodColor FoodSmell FoodCookingStyle

众所周知,某些食物可以通过各种方式烹饪(同时产生相同的效果)。一种方法是为每个变体创建一个新行。

Table2将拥有FoodCookingStyle的数据 FoodCookingStyle = 1 OR FoodCookingStyle = 2 OR FoodCookingStyle = 3

结果是我想创建一个Query,它使用Table2的结果生成一个看起来像

的SQL查询
SELECT * FROM TABLE1 WHERE FoodCookingStyle=1 OR FoodCookingStyle=2 OR FoodCookingStyle=3

(唯一的区别是我想查询table2而不是输入表达式)。

正在使用的数据库类型是SQLite3。

谢谢


澄清我的意思。 我需要table2的输出作为table1的输入

1 个答案:

答案 0 :(得分:1)

这个问题有点令人困惑。你正在寻找子查询吗?子查询语法与SELECT * FROM Table1 WHERE FoodCookingStyle IN ( SELECT FoodCookingStyle FROM Table2 WHERE FoodCookingStyle=1 OR FoodCookingStyle=2 OR FoodCookingStyle=3 )

一致