java - 获取具有相同其他列值的两个连续行的列值

标签 java android mysql sql

第 1 列:日期 第 2 列:类型

因此,如果行按日期降序排序,则找到用户具有相同连续类型“Clever”的日期(参见下面的示例)。

例如:

如果我的表包含以下数据-

  Sr   Date                            Type

  1  2013-05-24T16:21:06.728Z       Alaska

  2  2013-05-27T20:44:32.412Z       Clever

  3  2013-05-27T20:45:33.301Z       Clever

  4  2013-05-27T21:45:46.127Z       Clever

  5  2013-05-27T21:46:27.825Z       Self

6 2013-05-28T15:18:48.430Z 聪明

所以我想要日期2013-05-27T21:45:46.127Z

我尝试了以下方法-

ArrayList<String> startTimeList = new ArrayList<String>();
cur = dbAdapter.rawQuery("select Date, Type from User ORDER BY Date DESC", null);

cur.moveToFirst();

if(cur.getCount() > 0)
{
    int i = 0;

    while(cur.isAfterLast() == false)
    {
        if(cur.getString(1).equals("Clever"))
        {
            startTimeList.add(cur.getString(0));
            cur.moveToNext();
        }
        else
        {
            cur.moveToNext();
        }
        if(startTimeList.size() == 2)
        {
            return;
        }
    }

但这并没有给我类型为“Clever”的连续行的日期

最佳答案

String dateOfLastCleverPrecededByADuplicate;

cur = dbAdapter.rawQuery("select Date, Type from User ORDER BY Date DESC", null);

cur.moveToFirst();
String prevType;
String prevDate;
while (!cur.isAfterLast())
{
    if (cur.getString(1) != null &&
        cur.getString(1).equals(prevType) &&
        cur.getString(1).equals("Clever"))
    {
        // found consecutives record with identical type 'Clever'
        dateOfLastCleverPrecededByADuplicate = prevDate;
        break;
    }

    prevDate = cur.getString(0);
    prevType = cur.getString(1);
    cur.moveToNext();
}

之后,示例中的 dateOfLastCleverPrecededByADuplicate 为“2013-05-27T21:45:46.127Z”。

关于java - 获取具有相同其他列值的两个连续行的列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16813467/

相关文章:

Android - 具有多个 ListActivity 的应用程序导致 onListItemClick 中的正确 Id

android - 以编程方式设置 Spinner(使用 SpinnerAdapter)的选择。?

java - 如何对 recyclerView 进行分组,在组之间添加分隔线并为每个组添加一个图标

java - Elasticsearch 中的文档索引,JAVA API

android - Android 虚拟设备 (AVD) 的 NFC 标签仿真

php - AWS : Command works in command line, 但不是 PHP 的 exec

mysql - 如何将一个查询的结果作为另一个查询的输入?

PHP - 显示更多文章功能反馈

java - 从一个类中更改另一个类中的变量

java - 如何在elasticsearch中使用对象及其引用来索引Json对象?