5

我有一个很大的 sqlite 表,我想将它输出到一个文件中。所以我希望所有空值在文件中显示为字符串'N/A'。如何通过 sqlite 查询来实现这一点?谢谢。

4

1 回答 1

10

您可以将该ifnull功能用作:

select ifnull(mycolumn, 'N/A') from mytable;

来自 sqllite.org ( http://www.sqlite.org/lang_corefunc.html ):

ifnull() 函数返回其第一个非 NULL 参数的副本,如果两个参数均为 NULL,则返回 NULL。Ifnull() 必须恰好有 2 个参数。ifnull() 函数等效于有两个参数的 coalesce()。

我不认为可以做类似的事情select ifnull(*, 'N/A') from mytable;,所以你必须明确列出所有的列。

您可以使用以下内容生成csv输出:

sqlite> .mode csv
sqlite> .output myoutput.csv
sqlite> select ifnull(mycolumn1, 'N/A'), ifnull(mycolumn2, 'N/A') from mytable;
于 2013-07-16T18:31:07.047 回答