3

コンマ区切り形式のテーブルは次のとおりです。

date, number
2010-09-02, 2
2010-10-01, 3
2011-01-01, 4
2011-02-01, 5
2011-03-01, 6
2011-05-05, 7

SQLite の構文には「四半期」の日時関数がないように見えるので、これに対する回避策があるかどうか疑問に思っていました。

4

4 に答える 4

6
(cast(strftime('%m', date) as integer) + 2) / 3 as quarter
于 2013-02-15T15:30:57.437 に答える
4
CASE 
  WHEN cast(strftime('%m', date) as integer) BETWEEN 1 AND 3 THEN 1
  WHEN cast(strftime('%m', date) as integer) BETWEEN 4 and 6 THEN 2
  WHEN cast(strftime('%m', date) as integer) BETWEEN 7 and 9 THEN 3
  ELSE 4 END as Quarter
于 2012-06-25T22:09:33.823 に答える
1

例によってすみません。

select month, (((3-(month%3))%3)+month)/3 as 'qtr' from months

私たちに与えます:

1   1
2   1
3   1
4   2
5   2
6   2
7   3
8   3
9   3
10  4
11  4
12  4
于 2016-05-11T09:17:28.493 に答える
-1

それを解決するためにいくつかの係数を使用するのはどうですか。

(((3-(month%3))%3)+month)/3

月は 1 ~ 12 の数字の列です

基本的に、私は物事を最も近い 3 に切り上げてから、3 で割ります。

于 2016-05-11T09:15:08.033 に答える