2017-03-20 16 views
1

私はの4つの行に時間レコードを区切るためにcreateviewを作成したいが、常に "MIN(時間はBETWEEN '11:00:00 'と'12:00:00')をチェックアウトとして結果としてerronを生成する"質問は、内部のmin()/ max()の間のどのように私の構文に基づいて下で使用するか?BETWEEN MIN()/ MAX()in createviewの使い方は?

CREATE VIEW absenfinal AS SELECT pin, name, date, 
     MIN(time) as login, 
     MIN(time BETWEEN '11:00:00' and '12:00:00') as checkout, 
     MAX(time BETWEEN '11:00:00' and '12:00:00') as checkin, 
     MAX(time) as logout 
     FROM tb_tgljam 
     GROUP BY date, pin; 

作業コードは次のとおりです。

CREATE VIEW absenfinal AS SELECT pin, name, date, 
      MIN(time) as login, 
      MAX(time) as logout 
      FROM tb_tgljam 
      GROUP BY date, pin; 
+1

ための追加条件をCASE句を使用したサンプルデータとあなたの期待される出力を含めてください。 –

答えて

1

あなたの集計コール

MIN(CASE WHEN time BETWEEN '11:00:00' and '12:00:00' THEN time END) as checkout, 
+0

ありがとうございました!これは仕事です。 –

+0

@devianまた、サンプルデータと予想される出力を含める必要があります。今のところ、あなたの質問は誰にもほとんど役に立たないでしょう。 –