【问题标题】:query from two datepickers来自两个日期选择器的查询
【发布时间】:2012-05-15 20:37:19
【问题描述】:

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

...

    <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,使用datetime('now', 'localtime') SQLite 函数。

我试过这段代码,但不起作用。

    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 个类似于日期格式的字符串。 我应该怎么办?

【问题讨论】:

    标签: android sqlite date


    【解决方案1】:

    你试过了吗 "SELECT * FROM statistics WHERE date >= Datetime(" + s1 + ") AND date

    【讨论】:

    • 已解决,我们需要在按钮onclicklistener中插入getDay(),getMonth...,然后切换月份在查询中插入“01”而不是“1”。
    猜你喜欢
    • 2013-09-16
    • 1970-01-01
    • 2011-07-04
    • 2015-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多