ホームページ データベース mysql チュートリアル mysqlで一定期間のレコードをクエリする方法

mysqlで一定期間のレコードをクエリする方法

Nov 18, 2020 am 09:46 AM
mysql

一定期間のレコードをクエリする Mysql メソッド: 1. N 日以内のレコードをクエリします。コードは [WHERE TO_DAYS(NOW()) - TO_DAYS (時間フィールド)

mysqlで一定期間のレコードをクエリする方法

#その他の関連する無料学習の推奨事項:

mysql チュートリアル (ビデオ)

# #一定期間のレコードをクエリする mysql メソッド:

24 時間以内 (つまり 86400 秒) のレコード

$sql="SELECT video_id,count(id)as n FROM `rec_down` WHERE UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(add_time)<=86400 group by video_id order by n desc ";
$sql="select a.id,a.title,b.n from video_info a,(".$sql.")b where a.id=b.video_id order by n desc limit 20";
ログイン後にコピー

N 日以内のレコード

WHERE TO_DAYS(NOW()) - TO_DAYS(时间字段) <= N
ログイン後にコピー

今日の記録

where date(时间字段)=date(now())
ログイン後にコピー
または

where to_days(时间字段) = to_days(now());
ログイン後にコピー

一週間のクエリ:

select * from table   where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);
ログイン後にコピー

クエリ 1 か月:

select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
ログイン後にコピー

クエリは、過去 30 日以内の date_col 値を持つすべてのレコードを選択します。

mysql> SELECT something FROM tbl_name
            WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;    //真方便,以前都是自己写的,竟然不知道有这,失败.
ログイン後にコピー

DAYOFWEEK(date)

日付の週インデックスを返します (1 = 日曜日、2 = 月曜日、... 7 = 土曜日)。インデックス値はODBC規格に準拠しています。

mysql> SELECT DAYOFWEEK(’1998-02-03’);
         -> 3
ログイン後にコピー

WEEKDAY(date)

日付の週インデックスを返します (0 = 月曜日、1 = 火曜日、... 6 = 日曜日):

mysql> SELECT WEEKDAY(’1998-02-03 22:23:00’);
         -> 1
mysql> SELECT WEEKDAY(’1997-11-05’);
         -> 2
ログイン後にコピー

DAYOFMONTH(date)

返される日付は、1 ~ 31 の範囲の日です:

mysql> SELECT DAYOFMONTH(’1998-02-03’);
         -> 3
ログイン後にコピー

DAYOFYEAR(date)

戻り日は、1 ~ 366 の範囲の日です:

mysql> SELECT DAYOFYEAR(’1998-02-03’);
         -> 34
ログイン後にコピー

MONTH(date)

戻り日 月1 ~ 12 の範囲:

mysql> SELECT MONTH(’1998-02-03’);
         -> 2
ログイン後にコピー

DAYNAME(date)

日付の曜日名を返します:

mysql> SELECT DAYNAME("1998-02-05");
         -> ’Thursday’
ログイン後にコピー

MONTHNAME (日付)

日付の月名を返します:

mysql> SELECT MONTHNAME("1998-02-05");
         -> ’February’
ログイン後にコピー

QUARTER(date)

日付を四半期で返します。年、範囲は 1 ~ 4 です:

mysql> SELECT QUARTER(’98-04-01’);
         -> 2
ログイン後にコピー

WEEK(date)

WEEK(date,first)

日曜日の場合は次のようになります。 週の最初の日の場合、引数を 1 つだけ指定して関数を呼び出した場合、返される日付はその年の週であり、戻り値の範囲は 0 ~ 53 です (はい、 53週目の初め)。 WEEK() の 2 つの引数形式を使用すると、週が日曜日または月曜日のどちらで始まるか、および戻り値が 0 ~ 53 か 1 ~ 52 であるかを指定できます。 2 番目のパラメーターがどのように機能するかを示す表は次のとおりです。

値の意味

0 週は日曜日に始まり、戻り値の範囲は 0 ~ 53

1 週の始まり月曜日から始まる場合、戻り値の範囲は 0 ~ 53

2 日曜日から始まる週の場合、戻り値の範囲は 1 ~ 53

3 月曜日から始まる週の場合、戻り値値の範囲は 1 ~ 53 (ISO 8601)

mysql> SELECT WEEK(’1998-02-20’);
         -> 7
mysql> SELECT WEEK(’1998-02-20’,0);
         -> 7
mysql> SELECT WEEK(’1998-02-20’,1);
         -> 8
mysql> SELECT WEEK(’1998-12-31’,1);
         -> 53
ログイン後にコピー

バージョン 4.0 では、WEEK(#,0) が米国のカレンダーに一致するように変更されたことに注意してください。その週が前年の最終週の場合、オプションのパラメータとして 2 または 3 を使用しないと、MySQL は 0 を返すことに注意してください:

mysql> SELECT YEAR(’2000-01-01’), WEEK(’2000-01-01’,0);
         -> 2000, 0
mysql> SELECT WEEK(’2000-01-01’,2);
         -> 52
ログイン後にコピー

指定された日付値が実際には 1999 年の第 52 週の一部で、MySQL の WEEK() 関数は 52 を返すはずです。関数が「指定された年の週」を返すようにするため、0 を返すことにしました。これにより、日付値から月と日の値を抽出する他の関数と組み合わせて WEEK() 関数を使用する際に、信頼性が高くなります。適切な年週値を取得したい場合は、パラメータ 2 または 3 をオプションのパラメータとして使用するか、関数 YEARWEEK():

mysql> SELECT YEARWEEK(’2000-01-01’);
         -> 199952
mysql> SELECT MID(YEARWEEK(’2000-01-01’),5,2);
         -> 52
ログイン後にコピー

YEAR(date)

日付の年を 1000 ~ 9999 の範囲で返します:

mysql> SELECT YEAR(’98-02-03’);
         -> 1998
ログイン後にコピー

YEARWEEK(date)

YEARWEEK(date,first)

日付値が年の何週目であるかを返します。 2 番目のパラメータの形式と機能は、WEEK() の 2 番目のパラメータと完全に一致しています。年の最初または最後の週である特定の日付パラメーターの場合、返される年の値は、日付パラメーターで指定された年と一致しない可能性があることに注意してください。

mysql> SELECT YEARWEEK(’1987-01-01’);
         -> 198653
ログイン後にコピー

オプションのパラメーターの場合は、0 または1 、週の値の戻り値は WEEK() 関数によって返される値 (0) と異なります。WEEK() は、指定された年のコンテキストに従って週の値を返します。

HOUR(time)

0 ~ 23 の範囲の時間の値を返します:

mysql> SELECT HOUR(’10:05:03’);
         -> 10
ログイン後にコピー

MINUTE(time)

0 ~ 59 の範囲の時間の分の値を返します。

mysql> SELECT MINUTE(’98-02-03 10:05:03’);
         -> 5
ログイン後にコピー

SECOND(time)

時間の 2 番目の値を返します。 0 ~ 59 の範囲:

mysql> SELECT SECOND(’10:05:03’);
         -> 3
ログイン後にコピー

PERIOD_ADD(P,N)

期間 P に N か月を追加します (形式は YYMM または YYYYMM)。 YYYYMM形式で値を返します。期間パラメータ P は日付値ではないことに注意してください。

mysql> SELECT PERIOD_ADD(9801,2);
         -> 199803
ログイン後にコピー

PERIOD_DIFF(P1,P2)

期間 P1 と P2 の間の月数を返します。 P1 と P2 は YYMM または YYYYMM で指定する必要があります。期間パラメータ P1 と P2 は日付値ではないことに注意してください:

mysql> SELECT PERIOD_DIFF(9802,199703);

-> 11

DATE_ADD(date,INTERVAL)式タイプ )

DATE_SUB(日付,INTERVAL 式タイプ)

ADDDATE(日付,INTERVAL 式タイプ)

SUBDATE(date,INTERVAL expr type)

これらの関数は、日付の算術演算を実行します。 ADDDATE() と SUBDATE() は、それぞれ DATE_ADD() と DATE_SUB() の同義語です。 MySQL 3.23 では、式の右側が日付値または日時フィールドの場合、DATE_ADD() および DATE_SUB() の代わりに and - を使用できます (以下の例)。 date パラメーターは、日付の始まりを指定する DATETIME または DATE 値です。 expr は、開始日から間隔値を加算するか減算するかを指定する式です。 expr は文字列であり、その前に「-」を付けると負の間隔値を表すことができます。 type は、式が解釈される形式を示すキーワードです。

以上がmysqlで一定期間のレコードをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Laravelは紹介例 Laravelは紹介例 Apr 18, 2025 pm 12:45 PM

Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

MySQLおよびPHPMYADMIN:コア機能と関数 MySQLおよびPHPMYADMIN:コア機能と関数 Apr 22, 2025 am 12:12 AM

MySQLとPHPMyAdminは、強力なデータベース管理ツールです。 1)MySQLは、データベースとテーブルを作成し、DMLおよびSQLクエリを実行するために使用されます。 2)PHPMyAdminは、データベース管理、テーブル構造管理、データ操作、ユーザー許可管理のための直感的なインターフェイスを提供します。

MySQL対その他のプログラミング言語:比較 MySQL対その他のプログラミング言語:比較 Apr 19, 2025 am 12:22 AM

他のプログラミング言語と比較して、MySQLは主にデータの保存と管理に使用されますが、Python、Java、Cなどの他の言語は論理処理とアプリケーション開発に使用されます。 MySQLは、データ管理のニーズに適した高性能、スケーラビリティ、およびクロスプラットフォームサポートで知られていますが、他の言語は、データ分析、エンタープライズアプリケーション、システムプログラミングなどのそれぞれの分野で利点があります。

データベース接続の解決問題:Minii/DBライブラリを使用する実用的なケース データベース接続の解決問題:Minii/DBライブラリを使用する実用的なケース Apr 18, 2025 am 07:09 AM

小さなアプリケーションを開発する際には、軽量データベース操作ライブラリをすばやく統合する必要性という厄介な問題に遭遇しました。複数のライブラリを試した後、私はそれらがあまりにも多くの機能を持っているか、あまり互換性がないかのどちらかであることがわかりました。最終的に、私は問題を完全に解決したYii2に基づいた単純化されたバージョンであるMinii/DBを見つけました。

Laravel Frameworkインストール方法 Laravel Frameworkインストール方法 Apr 18, 2025 pm 12:54 PM

記事の概要:この記事では、Laravelフレームワークを簡単にインストールする方法について読者をガイドするための詳細なステップバイステップの指示を提供します。 Laravelは、Webアプリケーションの開発プロセスを高速化する強力なPHPフレームワークです。このチュートリアルは、システム要件からデータベースの構成とルーティングの設定までのインストールプロセスをカバーしています。これらの手順に従うことにより、読者はLaravelプロジェクトのための強固な基盤を迅速かつ効率的に築くことができます。

MySQLモードの問題を解決する問題:TheliamySQLModescheckerモジュールの使用経験 MySQLモードの問題を解決する問題:TheliamySQLModescheckerモジュールの使用経験 Apr 18, 2025 am 08:42 AM

Theliaを使用してeコマースWebサイトを開発するとき、私はトリッキーな問題に遭遇しました:MySQLモードが適切に設定されていないため、いくつかの機能が適切に機能しません。いくつかの調査の後、TheliamysQlModescheckerというモジュールを見つけました。これは、Theliaが必要とするMySQLパターンを自動的に修正できるため、問題を完全に解決できます。

MySQLの外国キーの目的を説明してください。 MySQLの外国キーの目的を説明してください。 Apr 25, 2025 am 12:17 AM

MySQLでは、外部キーの機能は、テーブル間の関係を確立し、データの一貫性と整合性を確保することです。外部キーは、参照整合性チェックとカスケード操作を通じてデータの有効性を維持します。パフォーマンスの最適化に注意し、それらを使用するときに一般的なエラーを避けてください。

mysqlとmariadbを比較対照します。 mysqlとmariadbを比較対照します。 Apr 26, 2025 am 12:08 AM

MySQLとMariaDBの主な違いは、パフォーマンス、機能、ライセンスです。1。MySQLはOracleによって開発され、Mariadbはフォークです。 2. Mariadbは、高負荷環境でパフォーマンスを向上させる可能性があります。 3.MariaDBは、より多くのストレージエンジンと機能を提供します。 4.MySQLは二重ライセンスを採用し、MariaDBは完全にオープンソースです。既存のインフラストラクチャ、パフォーマンス要件、機能要件、およびライセンスコストを選択する際に考慮する必要があります。

See all articles