2016-04-23 52 views
0

我有一个用逗号分隔的整数(如3,899,550)的sqlite文本列。我怎样才能使用这个值作为一个整数?我想按大于100万的值过滤。在文本列中的sqlite逗号分隔的整数

select * from table_t where some_func(comma_sep_column) > 1000000? 

回答

3

这里是一个选项:

SELECT CAST(REPLACE('1,234,567', ',', '') AS INTEGER); 

REPLACE功能可除去','CAST函数转换为整数。然后

您的代码将是:

SELECT * FROM tbl WHERE CAST(REPLACE(comma_sep_column, ',', '') AS INTEGER) > 1000000; 
+0

我可以证实这个工程,我也有同样的问题,但如果
'SELECT SUM(commasepcolumn)其中type =“ATYPE''风格查询。这是特别危险的,因为它只是把数字加到第一个逗号,所以数据又回来了,但这完全不正确。 – FinancialRadDeveloper