0

我对 SQLite 很陌生。我有一个非常基本的问题。为什么我不能选择特定列为零的行?

is_unwanted 列是类型TINYINT(我在 SQLite 中看到的基本上是指INTEGER

所以,我在数据库中只有一条记录(用于测试)。当我尝试

SELECT is_unwanted FROM 'urls'

我得到“ 0 ”()的结果,这很好,因为该列包含实际数字0

我试过=>

SELECT * FROM 'urls' WHERE is_unwanted = 0

并没有结果,但是

SELECT * FROM 'urls' WHERE is_unwanted <> 0

给我结果。

我究竟做错了什么??

4

2 回答 2

2

尝试运行

select '{' || is_unwanted || '}' from urls

查看数据库中的值是否真的是包含空格的字符串。

SQLite 是一个动态类型的数据库;当您指定时,TINYINTis 是该列的提示(SQLite 使用术语“亲和力”)。您可以使用

 select is_unwanted, typeof(is_unwanted) from urls

查看值及其类型。

于 2012-08-06T19:16:45.453 回答
0

你可以试试:

SELECT * FROM urls WHERE coalesce(is_unwanted,'') = ''
于 2018-05-15T04:37:07.577 回答