I have an SQLite database in android and I want to Select From a table "Transactions" only data from date1 till date2.
Code:
SELECT * FROM Transactions WHERE DATE(substr(transactiondate,7,4) ||substr(transactiondate,4,2) ||substr(transactiondate,1,2)) BETWEEN DATE(20201030) AND DATE(20201031)
result of query:
Execution finished without errors.
Result: 0 rows returned in 13ms
Update: Here is how I changed my data to "year-month-day" format:
val c = Calendar.getInstance()
val year = c.get(Calendar.YEAR)
val month = c.get(Calendar.MONTH)
val day = c.get(Calendar.DAY_OF_MONTH)
val correctMonthDefault = month+1
if(day<10 && correctMonthDefault>9){
tv_add_date.setText("" + year + "-" + correctMonthDefault +"-"+ "0"+ day )}
else if(correctMonthDefault<10 && day>9)
{
tv_add_date.setText("" + year + "-0" + correctMonthDefault +"-"+ "0"+ day )}
else if(day<10 && correctMonthDefault<10){
tv_add_date.setText("" + year + "-0" + correctMonthDefault +"-0" + day )}
else {
tv_add_date.setText("" + year + "-" + correctMonthDefault +"-" + day )}
btnCalendar.setOnClickListener {
val dpd = DatePickerDialog(this, DatePickerDialog.OnDateSetListener { datePicker, mYear, mMonth, mDay ->
var correctMonth = mMonth + 1
if(mDay<10 && correctMonth>9){
tv_add_date.setText(""+ mYear +"-" + correctMonth + "-0" + mDay)
}
else if(mDay>10 && correctMonth<10){
tv_add_date.setText(""+ mYear +"-0" + correctMonth + "-" + mDay)
} else if(mDay<10 && correctMonth<10){
tv_add_date.setText(""+ mYear +"-0" + correctMonth + "-0" + mDay)
}else{
tv_add_date.setText(""+ mYear +"-" + correctMonth + "-" + mDay)
}}, year, month, day)
dpd.show()
}
new database after I changed format: DataBaseUpdatedDateFormat
DataBase query: Here is the query that worked for me