我需要读取以下查询的列值
SELECT strtime('%Y-%m',created_at)as field FROM table GROUP BY field
列字段的类型是3(我假设它是博客),但我需要字符串
我该怎么办?
更新
const char * sql = “SELECT CAST(strftime('%Y',created_at)为INTEGER)作为表FROM GROUP BY年份
if(SQLITE_OK == sqlite3_prepare_v2([AppDelegate db],sql,-1,& queryhandle,NULL)){ while(SQLITE_ROW == sqlite3_step(queryhandle)){
NSSTring* year = [NSString stringWithFormat:@"%d",sqlite3_column_int(queryhandle, 0)];
此代码为我提供了3460年
(已将强制转换检查为整数,并转换为varchar和sqlite3_column_text函数)
答案 0 :(得分:1)
只要created_at
具有sqlite docs中指定的时间字符串格式,在特定元组中使用的存储类型无关紧要(尽管您可以使用{{ 1}})功能。 typeof
函数的结果(您将其别名为strftime
)是text或null。
field