sqlite между вопросом - PullRequest
       0

sqlite между вопросом

0 голосов
/ 24 октября 2010

Перед тем, как переписать приложение, я подумал, что лучше сначала задать этот вопрос.

С sqlite, возможно ли сделать выражение между этими словами?

select * from database where date between '2010-10-01' and '2010-10-31'

Как сторонавопрос, как я могу получить последнюю дату месяца в javascript, используя вышеуказанный формат?

Ответы [ 4 ]

2 голосов
/ 24 октября 2010

Да, вы можете ( из документов ):

МЕЖДУ оператором

Оператор BETWEEN логически эквивалентен паре сравнений. x BETWEEN y AND z эквивалентно x>=y AND x<=z за исключением того, что с BETWEEN выражение x вычисляется только один раз. Приоритет оператора BETWEEN совпадает с приоритетом операторов == и != и LIKE и групп слева направо.

Что касается вашего последнего вопроса, вы можете сделать следующее:

... WHERE your_date >= '2010-10-01' AND your_date < date('2010-10-01', '+1 month')

Дальнейшее чтение:

0 голосов
/ 24 октября 2010

Ответ на дополнительный вопрос будет примерно таким:

 Date.prototype.toSQLDateString = function() {
     function pad(n) { return n < 10 ? '0' + n : n }
     return this.getFullYear() + '-' + pad(this.getMonth() + 1) + '-' + pad(this.getDate());
 };

 Date.prototype.setDateToLastOfTheMonth = function() {        
     for (var i = 31; i > 25; i++) {
       this.setDate(i);
       if (this.getDate(i) != 1) {
         return;
       }
     }
 };
0 голосов
/ 24 октября 2010

Да, вы можете использовать его, также вы можете использовать следующее, если у вас есть другой формат даты

SELECT *
FROM orders
WHERE order_date between strftime('%Y/%m/%d', '2003/01/01')
AND strftime('%Y/%m/%d', '2003/12/31');
0 голосов
/ 24 октября 2010

возможно ли сделать оператор между этими словами?

select * from database where date between '2010-10-01' and '2010-10-31'

Да, это так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...