SQLite中是否有条件的where语句?

时间:2018-12-28 08:53:59

标签: sql typescript sqlite better-sqlite3

我有一个待办事项应用程序,其中包含待办事项的数据库。它包含一列 done ,该列将设置为false或true。现在,我想按 all 未完成过滤数据。因此,要么完成是无关紧要的,要么必须是 false

我在TypeScript应用程序中使用SQLite3。目前,我是通过使用字符串模板来完成此操作的,但我希望使用基于SQL的解决方案。

ng build --prod

我的想法是使用 "assets": [ "src/assets", "src/favicon.ico", "src/web.config" <---- Removed this line ], 子句,但似乎无法解决db.prepare(` select rowid as id, title, description from todo ${selectAll ? '' : 'where done = 0'} limit ? offset ? `).all(limit, offset); 子句。

有更好的解决方案吗?

CASE是根据应用程序的查询参数设置的TypeScript变量。

WHERE为假时的输出

selectAll

selectAll为真时输出

id | title             | description          | done
1  | Clean the kitchen | as the title says... | 1
2  | Do the shopping   | potatoes, tomatoes   | 0
3  | Program stuff     | Todo app             | 1

1 个答案:

答案 0 :(得分:1)

您可以使用布尔逻辑:

where ? = '' or done = 0