易截截图软件、单文件、免安装、纯绿色、仅160KB

如何在sqlite中删除前N条记录

如题,没有主键,我只要删除前N条记录。n数值大概在千万级别的。
没有主键

有没有其它可供排序的字段?

SQL code:
delete from tb where id in (select top n id from tb)


引用
没有主键

有没有其它可供排序的字段?

有的。可是数据上千万条的

delete from tt where 排序的字段 in (select 排序的字段 from tt order by 排序的字段 limit 0,n-1)

最坏的情况:这些数据都是相同的怎么办呢?

加入自增字段ID

引用引用 1 楼 acmain_chm 的回复:
没有主键

有没有其它可供排序的字段?

有的。可是数据上千万条的


SQL code:
delete from yourTable order by 排序的字段 limit n



测试了一下,4楼的代码可以通过

的确可以,就是效率太低,我数据库中有近亿条数据,一次删除1000万条的。
有点慢

引用我数据库中有近亿条数据,一次删除1000万条的。


delete from yourTable order by 排序的字段 limit n

最好在 排序的字段 上索引。

两种思路:
1种是直接删除
1种是将剩余的记录生成新表


相关问答:

熟悉Sqlite的请进来!!!!!

大家好!
  sqlite字段为float型的值怎样访问?
试过用sqlite3_column_double,确返回的数据不正确;
没用过,帮顶.

一样啊,返回全是 string

你的代码是什么?
double sqlite3_column_double(sqli ......

SQLite取整数函数是哪个?

更新语句中:
UPDATE sc SET AA=INT(BB)
我想让AA得到BB的整数值。可是运行报错。
不知道SQLite下 取整数部分的函数是哪个?(四舍五入的函数又是哪个?)。
如果知道还有其他函数请一并告知,谢谢。

ROUND
......

vb.net如何操作sqlite数据库 - .NET技术 / VB.NET

比如:
1、连接数据库;
2、建表,insert 、update,delete,select如何写?
是不是要下载 ADO.NET 2.0 引擎?
sqlite使用手册

谢谢qshurufa,我想知道如何通过vb.net实现,就是语句咋写?

Dim Conn As New ......

sqlite创建的表没保存 - 其他数据库开发 / 其他数据库

刚学sqlite,创建了个表,退出sqlite又重新打开后,查询说没有这个表。怎么样才能保存这个表呢,windows下

直接运行sqlite3.exe,然后就就直接create table Test了
退出sqlite3.exe 重新打开,select就提示没有这 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号