MySQLのクエリデータ一昨日、ほぼ年中無休、今月、先月、など(算術関数の実行の日付)

注:ステートメントのフィールド last_login_timeフィールド名は時間に置き換えることができます


#お問い合わせは昨日、ログオンしているユーザーアカウント
SELECT last_login_time、モバイルからのユーザーWHERE TO_DAYS(NOW()) - TO_DAYS(last_login_time)= 1 ; #は、ユーザーのアカウントのログインにその日照会 SELECT last_login_time、モバイルからのユーザーWHERE TO_DAYS(NOW()) - TO_DAYS (last_login_time)< 1 ; 記録の最後の日で#検索last_login_time値 SELECTモバイル、last_login_time からユーザーWHERE TO_DAYS(NOW()) - TO_DAYS(last_login_time)<= 1 ; #照会ログインしているユーザーの過去7日間のアカウント SELECTモバイル、last_login_time からユーザWHERE DATE_SUB(CURDATE()、INTERVAL2日)< DATE(last_login_time); *説明:1日に時間間隔として解釈INTERVAL 1 DAY、
でユーザーをログに記録するには、1週間のアカウント照会
SELECTモバイル、last_login_time からユーザーWHEREは - BETWEEN CURRENT_DATE()last_login_time 7 とSYSDATEを(); #クエリはログインしているユーザーのアカウント今月 SELECTモバイル、last_login_time からユーザーDATE_FORMAT(last_login_time、' %Y-%のMは')DATE_FORMAT(CURDATE()、= ' %Y-%のMを' ); 月の#クエリユーザー名でログイン SELECT last_login_time、モバイルからの利用者WHERE PERIOD_DIFF(DATE_FORMAT(NOW()、' %Yの%のM ')、DATE_FORMAT(last_login_time、' %Yの%のM '))= 1 ;

注:データベース時間はワードの形式で格納UNIXタイムスタンプである場合、時間の比較一様なフォーマットに変更する必要がある。
DATE_SUBは、()フォーマット時間を返すために:2019年10月29日
必要UNIX_TIMESTAMP()変換UNIXタイムスタンプ比較形式:

次のようにコードがある:
WHERE inputtime> UNIX_TIMESTAMP DATE_SUB(CURDATE()、INTERVAL(1。 DAY))

 

(1 WEEKDAY(日付)
 
  アクション:週のインデックス日付を返します(0、月曜日に=カタログを1。 =火曜日に、... 6。 = 日曜日)

    SELECT WEEKDAY( ' 1997年の - 11 - 05 ');
   リターン: - > 2  

(2 )DAYOFMONTH(日付) 

  アクション:日付は、月の最初の日で戻り、1〜31の範囲である:

  MySQLは> SELECT(「1998年2月3日を」)DAYOFMONTH、
  戻り結果: - > 3

(3)DAYOFYEAR(日付)

  アクション:日付は366年の最初の日、範囲1を返し:

  MySQLの> DAYOFYEAR SELECT( '1998年2月3日');
  戻り値の結果: - > 34である

。(4)DAYNAME(日付)

  役割:戻り日付の曜日名:


  MySQLの> SELECT DAYNAME( "1998年2月5日");
  - > '木曜日

 (5)MONTHNAME(日付)


  役割:返却日の月名:


  mysql> SELECT MONTHNAME("1998-02-05");
  -> ’February’

 (6)QUARTER(date)


  作用:返回 date 在一年中的季度,范围为 1 到 4:


  mysql> SELECT QUARTER(’98-04-01’);
  -> 2

 

おすすめ

転載: www.cnblogs.com/syw20170419/p/11761752.html