从两个datepickers查询

时间:2012-05-15 20:37:19

标签: android sqlite date

我的布局中有两个简单的DatePickers。

...

    <DatePicker
    android:id="@+id/dp1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

...

<DatePicker
    android:id="@+id/dp2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

...

<Button
    android:id="@+id/bokdate"
    android:layout_width="62dp"
    android:layout_height="wrap_content"
    android:text="@string/ok" />

我会在我的数据库中查询第一个DatePicker日期和第二个DatePicker日期之间的寄存器。

日期使用YYYY-MM-DD HH:MM:SS SQLite函数以datetime('now', 'localtime')格式存储在我的日期库中。

我已尝试过此代码,但无法正常使用。

    DatePicker dp1 = (DatePicker) findViewById(R.id.dp1);
    DatePicker dp2 = (DatePicker) findViewById(R.id.dp2);

    Integer day1 = dp1.getDayOfMonth();
    Integer month1 = dp1.getMonth() + 1;
    Integer year1 = dp1.getYear();

    String s1 = "'" + year1.toString() + "-" + month1.toString() + "-"
            + day1.toString() + " 00:00:00'";

    Integer day2 = dp2.getDayOfMonth();
    Integer month2 = dp2.getMonth() + 1;
    Integer year2 = dp2.getYear();

    String s2 = "'" + year2.toString() + "-" + month2.toString() + "-"
            + day2.toString() + " 00:00:00'";

    final Button b1 = (Button) findViewById(R.id.bokdate);

    b1.setOnClickListener(new OnClickListener() {
        public void onClick(View arg0) {
            Intent intent = new Intent(OtherDatesActivity.this,
                    ShowDateStatisticsActivity.class);
            Bundle bundle = new Bundle();
            bundle.putString("query",
                    "SELECT * FROM statistics WHERE date BETWEEN " + s1 + " AND "
                            + s2);
            intent.putExtras(bundle);
            startActivity(intent);
        }

我试图生成2个与日期格式相似的字符串。 我该怎么办?

1 个答案:

答案 0 :(得分:0)

你尝试过吗? “SELECT * FROM statistics WHERE date&gt; = Datetime(”+ s1 +“)AND date&lt; = Datetime(”+ s2 +“)”?