java - 在 SQLite 中查询日期的月份部分

标签 java android sql sqlite

我可以使用 String [] SelectionArgs = { "2018"}; 查询日期的年份部分

String query =
  "SELECT * FROM TABLE" +
  "WHERE strftime('%Y', COLUMN_DATE) = ?" + 
  "ORDER BY strftime('%m', COLUMN_DATE) DESC;"

return db.rawQuery(query, selectionArgs);

但是我在查询日期的月份部分时遇到了麻烦,就像我查询年份部分一样。

有人可以帮助我吗?

最佳答案

如果您希望日期具有特定的月份(不受年份或日期的限制),可以继续使用 strftime 函数。查询10月份的结果:

WHERE strftime('%m', COLUMN_DATE) = '10'                  /* October */
<小时/>

如果您想查询特定年月的结果,您可以将它们组合起来,如下所示:

WHERE strftime('%Y-%m', COLUMN_DATE) = '2011-05'          /* May, 2011 */

关于java - 在 SQLite 中查询日期的月份部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51913580/

相关文章:

android - 模拟器上的错误 - Android Studio Chipmunk 2021.2.1 Canary 7

MySQL 根据找到的 ID 返回 1 或 0

java - 调用 objadapter.removeItem(po);仅当列表被删除时

java - 如何以 ASCII 码显示我输入的所需值?

java - OpenEJB 中的@Module 注解是什么以及如何使用它?

java - 实现 eBay 查找/反馈 API

android - 调用后 TextView 边框颜色未设置为黄色

java - 无法在 android 中显示 ArrayList<String>

sql - 按周对天进行分组 sql server/ssrs

Sql查询仅对一列上的数据进行排序,但不更改其他列