Android 在一个额外的列中对检索到的数据进行连续编号
当我使用SELECT DISTINCT查询时,我希望得到一个编号的光标 表:Android 在一个额外的列中对检索到的数据进行连续编号,android,sql,sqlite,unique,distinct,Android,Sql,Sqlite,Unique,Distinct,当我使用SELECT DISTINCT查询时,我希望得到一个编号的光标 表: | _id | Name | | 1 | Jones | | 2 | Smith | | 3 | Jones | | 4 | Taylor| | 5 | Brown | | 6 | Brown | | 7 | Brown | 我想要的是这样一个光标: | _id | Name | | 1 | Jones | | 2 | Smith | | 3 | Tay
| _id | Name |
| 1 | Jones |
| 2 | Smith |
| 3 | Jones |
| 4 | Taylor|
| 5 | Brown |
| 6 | Brown |
| 7 | Brown |
我想要的是这样一个光标:
| _id | Name |
| 1 | Jones |
| 2 | Smith |
| 3 | Taylor|
| 4 | Brown |
我试了很多,但都没用。
有时没有唯一的值,有时在选择项目时出现以下错误:
08-22 22:18:15.413: ERROR/AndroidRuntime(1053): java.lang.IllegalStateException: this should only be called when the cursor is valid
谢谢你的帮助 我认为最简单的方法是使用临时表:
'create temporary table bat as select distinct name from yourtable;
select rowid, * from bat ; '
您正在寻找一个名为
排名的东西,很遗憾,我不知道SQLite语法。您好,听起来不错。我尝试了以下操作:“创建临时表bat作为从“+table+”中选择不同的“+col+”;“+”选择id,*from bat;
,但我得到了一个例外,即“id不存在”…我尝试了:“创建临时表bat(\u id整数主键自动递增,项作为从“+table+”中选择不同的“+col+”);“+”从bat中选择_id,“+col+”;“
但它也不起作用。