日付比較を実装し、5日以内と10日以内のレコードを表示する方法
比較|表示
主な引数は SELECT something FROM table
WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 5; に焦点を当てています。 長い間試しましたが、結果はまだ間違っていました。今日やっと見つけた MYSQL 関数。その結果を自分だけのものにする勇気がないので、皆さんの勉強のために投稿します (技術的な内容は高くありませんが、私に投げないでください (笑) )。
MYSQLのTO_DAYS(DATE)関数は次のように説明されています: DATEを西暦0年の合計日数に戻してテストしました
mysql>select to_days(now(0)); -------------------- -+
| 今日(今()) | --------+
| 730839 |
+---- ----------+
現在時刻から西暦 0 年までの合計日数を求めて、上記のステートメントでテストしてみました
mysql>select TO_DAYS(NOW()) - TO_DAYS(date_col) <= 5; 結果表示されます: エラー 1054:不明な列 'date_col' in 'field first'
この道路はブロックされています。第 5 世代を date_col に直接入れてみます
mysql>select to_days(now()) - to_days(5); 結果は次のようになります: +--------------- -------------+
|to_days(now()) - to_days( 5)|+--------------- -------+ +----- ----------------------+
え?とんでもない?これもうまくいきませんか?
次にコマンド
mysql>select を試します。 。 。 。
突然、to_days(now()) は整数を返すのに、なぜわざわざ to_days(date) を再度実行する必要があるのかと思いました。今すぐ試してみましょう
+---------------+ | to_days (now()) -5 | +---------------+
+------ - ------------------+
OK、万歳、ついに望んでいた結果が得られました(笑)これが PHP コード内の SELECT クエリです
。
データベースを保存するときは、NOW() を使用して DATEANDTIME の値を直接代入するのが習慣です。表示するときにフォーマットする必要はありません。取り出してすぐに使用できます。
infoid int( 11) NOT NULL auto_increment,
topic varchar(255) NOT NULL,
email varchar(50),
dateandtime datetime DEFAULT '0000-00-00 00:00: 00' NOT NULL,PRIMARY KEY (infoid)
);
ここでの DATEANDTIME は標準の日付形式であり、5 日以内のレコードをクエリしたいとします。 以下は SQL クエリ ステートメントです
$sql=" select * from infomess where to_days(dateandtime) >= (to_days(now) ()) - 5) order by infoid desc limit $offset,$psize";
には where to_days(dateandtime) >= (to_days( now()) - 5) で十分で、以下は追加です。 ここの 5 は変数として設定できます
Then $ limitdays は GET メソッドで渡すことができます (ほとんどの場合 GET メソッドで渡されます)
UNIX スタンプを使用しているという友人もいます。そのような結果を得るには、誰がそのようなコードを書いたのでしょうか? みんなの参考と比較のために投稿して、PHP 関数または MYSQL 関数の実装の方が効率的であるかどうかを判断することもできます。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









MySQLデータベースでは、ユーザーとデータベースの関係は、アクセス許可と表によって定義されます。ユーザーには、データベースにアクセスするためのユーザー名とパスワードがあります。許可は助成金コマンドを通じて付与され、テーブルはCreate Tableコマンドによって作成されます。ユーザーとデータベースの関係を確立するには、データベースを作成し、ユーザーを作成してから許可を付与する必要があります。

MySQLには、無料のコミュニティバージョンと有料エンタープライズバージョンがあります。コミュニティバージョンは無料で使用および変更できますが、サポートは制限されており、安定性要件が低く、技術的な能力が強いアプリケーションに適しています。 Enterprise Editionは、安定した信頼性の高い高性能データベースを必要とするアプリケーションに対する包括的な商業サポートを提供し、サポートの支払いを喜んでいます。バージョンを選択する際に考慮される要因には、アプリケーションの重要性、予算編成、技術スキルが含まれます。完璧なオプションはなく、最も適切なオプションのみであり、特定の状況に応じて慎重に選択する必要があります。

データ統合の簡素化:AmazonrdsmysqlとRedshiftのゼロETL統合効率的なデータ統合は、データ駆動型組織の中心にあります。従来のETL(抽出、変換、負荷)プロセスは、特にデータベース(AmazonrdsmysQlなど)をデータウェアハウス(Redshiftなど)と統合する場合、複雑で時間がかかります。ただし、AWSは、この状況を完全に変えたゼロETL統合ソリューションを提供し、RDSMYSQLからRedshiftへのデータ移行のための簡略化されたほぼリアルタイムソリューションを提供します。この記事では、RDSMysQl Zero ETLのRedshiftとの統合に飛び込み、それがどのように機能するか、それがデータエンジニアと開発者にもたらす利点を説明します。

1.正しいインデックスを使用して、データの量を削減してデータ検索をスピードアップしました。テーブルの列を複数回検索する場合は、その列のインデックスを作成します。あなたまたはあなたのアプリが基準に従って複数の列からのデータが必要な場合、複合インデックス2を作成します2。選択した列のみを避けます。必要な列のすべてを選択すると、より多くのサーバーメモリを使用する場合にのみサーバーが遅くなり、たとえばテーブルにはcreated_atやupdated_atやupdated_atなどの列が含まれます。

MySQLのユーザー名とパスワードを入力するには:1。ユーザー名とパスワードを決定します。 2。データベースに接続します。 3.ユーザー名とパスワードを使用して、クエリとコマンドを実行します。

MySQLデータベースパフォーマンス最適化ガイドリソース集約型アプリケーションでは、MySQLデータベースが重要な役割を果たし、大規模なトランザクションの管理を担当しています。ただし、アプリケーションのスケールが拡大すると、データベースパフォーマンスのボトルネックが制約になることがよくあります。この記事では、一連の効果的なMySQLパフォーマンス最適化戦略を検討して、アプリケーションが高負荷の下で効率的で応答性の高いままであることを保証します。実際のケースを組み合わせて、インデックス作成、クエリ最適化、データベース設計、キャッシュなどの詳細な主要なテクノロジーを説明します。 1.データベースアーキテクチャの設計と最適化されたデータベースアーキテクチャは、MySQLパフォーマンスの最適化の基礎です。いくつかのコア原則は次のとおりです。適切なデータ型を選択し、ニーズを満たす最小のデータ型を選択すると、ストレージスペースを節約するだけでなく、データ処理速度を向上させることもできます。

データベース酸属性の詳細な説明酸属性は、データベーストランザクションの信頼性と一貫性を確保するための一連のルールです。データベースシステムがトランザクションを処理する方法を定義し、システムのクラッシュ、停電、または複数のユーザーの同時アクセスの場合でも、データの整合性と精度を確保します。酸属性の概要原子性:トランザクションは不可分な単位と見なされます。どの部分も失敗し、トランザクション全体がロールバックされ、データベースは変更を保持しません。たとえば、銀行の譲渡が1つのアカウントから控除されているが別のアカウントに増加しない場合、操作全体が取り消されます。 TRANSACTION; updateaccountssetbalance = balance-100wh

MySQLのコピーと貼り付けには、次の手順が含まれています。データを選択し、Ctrl C(Windows)またはCMD C(MAC)でコピーします。ターゲットの場所を右クリックして、貼り付けまたはCTRL V(Windows)またはCMD V(MAC)を使用します。コピーされたデータは、ターゲットの場所に挿入されるか、既存のデータを置き換えます(データが既にターゲットの場所に存在するかどうかに応じて)。
