相关疑难解决方法(0)

如何使用anko删除Kotlin中最新10条记录以外的所有记录?

代码B定义了一个Log表,我希望清除除最新10条记录之外的所有记录.

目前,我首先按CreatedDate列出所有记录,然后从第11条记录到最后一条记录进行循环,并使用代码A删除记录.

有没有更好的方法在Kotlin与anko做到这一点?

代码A.

fun deleteDBLogByID(_id:Long)=mDBLogHelper.use{
        delete(DBLogTable.TableNAME,"$idName = {$idName} ","$idName" to _id.toString() )
}
Run Code Online (Sandbox Code Playgroud)

代码B.

class DBLogHelper(mContext: Context = UIApp.instance) : ManagedSQLiteOpenHelper(
        mContext,
        DB_NAME,
        null,
        DB_VERSION) {

    companion object {
        val DB_NAME = "log.db"
        val DB_VERSION = 1
        val instance by lazy { DBLogHelper() }
    }

    override fun onCreate(db: SQLiteDatabase) {
        db.createTable( DBLogTable.TableNAME , true,
                DBLogTable._ID to INTEGER + PRIMARY_KEY+ AUTOINCREMENT,
                DBLogTable.CreatedDate to INTEGER,
                DBLogTable.Status to INTEGER  +DEFAULT("0"),
                DBLogTable.Description to TEXT
        )
    } 

}
Run Code Online (Sandbox Code Playgroud)

android kotlin anko

7
推荐指数
1
解决办法
439
查看次数

MySQL - 有效删除除最后 N 条以外的所有记录

我最近开始学习 SQL,现在被要求对表执行一个简单的删除,保留每个用户的最后 100 条记录。我正在研究将其存档的最佳方法(更有效的方法),并找到了一些可能的解决方案(SQL 查询:从表中删除除最新 N 之外的所有记录?从 SQL 中的数据库表中删除除前 n之外的所有记录),但它是那种错综复杂的让我根据效率选择一个。所以我在这里寻求你的帮助。

这是我们保存用户访问日志的名为“访问”的表。

access:
- id (autoincrement) - primary
- userid (integer 11) - key
- refer (varchar 100)
- date (date/time)
Run Code Online (Sandbox Code Playgroud)

我的想法是每次同一用户进入系统时,就在插入新日志之前,从用户 ID 中删除旧记录。

我已经尝试了以下代码,但出现错误:此版本的 MySQL 尚不支持“LIMIT & IN/ALL/ANY/SOME 子查询”

DELETE FROM
  access
WHERE
  id NOT IN (
    SELECT id FROM access WHERE userid = 10 ORDER BY id DESC LIMIT 100
  );
Run Code Online (Sandbox Code Playgroud)

拜托,你能给我建议一些解决方案吗?谢谢!

mysql sql sql-delete

5
推荐指数
1
解决办法
2548
查看次数

MySQL IN子句是否多次执行子查询?

鉴于MySQL中的这个SQL查询:

SELECT * FROM tableA WHERE tableA.id IN (SELECT id FROM tableB);
Run Code Online (Sandbox Code Playgroud)

MySQL是否SELECT id FROM tableB为每一行执行多次子查询tableA

有没有办法让sql更快,而不使用变量或存储过程?

为什么这通常比使用慢LEFT JOIN

mysql database-performance

3
推荐指数
2
解决办法
3139
查看次数

标签 统计

mysql ×2

android ×1

anko ×1

database-performance ×1

kotlin ×1

sql ×1

sql-delete ×1