同じ日の最初の3つのデータを取得するためのMySQLタイムラインデータ

同じ日の最初の3つのデータを取得するためのMySQLタイムラインデータ

テーブルデータを作成する

テーブル `praise_info` を作成します (
 `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
 `pic_id` varchar(64) デフォルト NULL コメント '画像ID',
 `created_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '作成時刻',
主キー (`id`)、
 キー `pic_id` (`pic_id`) BTREE の使用
) ENGINE=InnoDB AUTO_INCREMENT=3647 DEFAULT CHARSET=utf8 COMMENT='画像テーブル';

データ省略を追加

タイムライン上の最初の2つのデータ

*から選択
(
SELECT *, @num := if(@created_time = DATE_FORMAT(created_time, '%Y-%m-%d'), @num := @num + 1, 1) を row_num として、
@created_time := DATE_FORMAT(created_time, '%Y-%m-%d') を axisTime として praise_info から取得
ID降順で並び替え
) AS 温度
ここで、行番号 < 3;

追伸:MySQLの世代タイムラインを見てみましょう

pro_dim_date が存在する場合はプロシージャを削除します。
tudou@Gyyx
CREATE PROCEDURE pro_dim_date(IN bdate DATE,IN edate DATE)
始める
var DATE DEFAULT bdate を宣言します。
evar DATE DEFAULT DATE_ADD(edate,INTERVAL 1 DAY) を宣言します。
週の日付を宣言します。
eweek DATEを宣言します。
var < evar DO の場合
SET bweek = DATE_ADD(DATE_SUB(var,INTERVAL 1 WEEK),INTERVAL 1 DAY);
SET eweek = DATE_SUB(DATE_ADD(var,INTERVAL 1 WEEK),INTERVAL 1 DAY);
gyyx_report.dim_date に挿入
(
`date_id`、
`日付名`,
`date_of_month`、
`年ID`、
`年名`,
`四半期ID`、
`四半期名`,
`月ID`,
`月名`,
`月名`,
`月_年_ID`、
`週ID`、
`週名`,
`年週番号`,
`年週名`,
`週末`
)
価値観
(
DATE_FORMAT(var,'%Y%m%d'),
DATE_FORMAT(var,'%Y-%m-%d'),
DAYOFMONTH(変数)、
年(変数),
CONCAT(YEAR(var),'年'),
QUARTER(変数)、
CONCAT(QUARTER(var),'quarter'),
DATE_FORMAT(var,'%Y%m'),
CONCAT(YEAR(変数),'年',MONTH(変数),'月'),
CONCAT(MONTH(var),'月'),
月(変数)、
曜日(変数)、
CASE WEEKDAY(var) 0 のとき 'Monday' 1 のとき 'Tuesday' 2 のとき 'Wednesday' 3 のとき 'Thursday' 4 のとき 'Friday' 5 のとき 'Saturday' 6 のとき 'Sunday' END,
WEEKOFYEAR(変数),
CONCAT('第',WEEKOFYEAR(var),'周(',MONTH(bweek),'月',DAY(bweek),'日~',MONTH(eweek),'月',DAY(eweek),'日'),
CASE WHEN WEEKDAY(var)>4 THEN 'Yes' ELSE 'No' END
);
SET var=DATE_ADD(var,INTERVAL 1 DAY);
終了しながら;
終わり

電話:

pro_dim_date('2005-01-01','2013-12-31') を呼び出します。

結果:

: : : : : : : : : : : : : : :

テーブル構造:

テーブル `dim_date` を作成します (
&nbsp; `date_id` int(11) NOT NULL COMMENT '20110512',
&nbsp; `date_name` varchar(16) デフォルト NULL コメント '2011-05-12',
&nbsp; `date_of_month` int(11) デフォルト NULL コメント '12',
&nbsp; `year_id` int(11) デフォルト NULL コメント '2011',
&nbsp; `year_name` varchar(16) デフォルト NULL コメント '2011',
&nbsp; `quarter_id` int(11) デフォルト NULL コメント '2',
&nbsp; `quarter_name` varchar(16) デフォルト NULL コメント '2季',
&nbsp; `month_id` int(11) デフォルト NULL コメント '5',
&nbsp; `month_name` varchar(16) デフォルト NULL コメント '5月',
&nbsp; `month_of_year_name` varchar(16) デフォルト NULL コメント '2011年5月',
&nbsp; `month_of_year_id` int(11) デフォルト NULL コメント '201105',
&nbsp; `week_id` int(11) デフォルト NULL,
&nbsp; `week_name` varchar(16) デフォルト NULL,
&nbsp; `week_of_year_id` int(11) デフォルト NULL,
&nbsp; `week_of_year_name` varchar(32) デフォルト NULL,
&nbsp; `is_weekend` enum('No','Yes') DEFAULT NULL COMMENT '週末ですか',
&nbsp; 主キー (`date_id`)、
&nbsp; キー `ix_dim_date_date_name` (`date_name`),
&nbsp; キー `ix_dim_date_month_id` (`month_id`),
&nbsp; キー `ix_dim_date_year_id` (`year_id`),
&nbsp; キー `ix_dim_date_quanter_id` (`quarter_id`),
&nbsp; キー `ix_dim_date_week_of_year_id` (`week_of_year_id`,`week_of_year_name`)
) エンジン=MyISAM デフォルト文字セット=latin1

要約する

上記は、私が紹介した当日のデータを取得するためのMysqlタイムラインデータの最初の3つです。お役に立てば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • 指定された期間内のすべての日付または月を取得する MySQL ステートメント (ストアド プロシージャの設定やテーブルの追加は不要)
  • MySQL DATEDIFF 関数を使用して 2 つの日付間の時間間隔を取得する方法
  • 一定期間の日ごと、時間ごとの統計データを取得するMySQLの詳しい説明
  • 今日と昨日の 0:00 タイムスタンプを取得する MySQL の例
  • mysqlは昨日の日付、今日の日付、明日の日付、前の時間と次の時間の時刻を取得します
  • mysqlは指定された期間内の統計データを取得します
  • MySQLで時間を取得する方法

<<:  Linux ディスク管理 LVM の使用

>>:  WeChat アプレット計算機の例

推薦する

MySQL トリガー構文とアプリケーション例

この記事では、例を使用して MySQL トリガーの構文とアプリケーションを説明します。ご参考までに、...

MySQL データベースのアップグレードにおけるいくつかの「落とし穴」

商用データベースの場合、データベースのアップグレードは優先度が高く、バージョンアップのロードマップ、...

Dockerとイメージの操作方法

ミラーを探すDocker Hubのウェブサイトからイメージを検索できます。Docker Hubのウェ...

Vue.js ドロップダウン コンポーネント付きテキストボックス

ドロップダウン付きのテキストボックスを使用すると、ユーザーはドロップダウン リストから入力を選択した...

JavaScriptにおけるPromiseの使い方と注意点について(推奨)

1. 約束の説明Promise は、非同期操作の最終状態 (失敗または正常完了) とその結果の値を...

Docker で Confluence をデプロイする

1. 環境要件1. Docker 17以上がインストールされている2. コンテナ操作docker r...

MySQL 文字セットの概要

目次文字セット比較ルール4つのレベルの文字セットと比較規則3つのシステム変数このノートは主にMySQ...

MySQL でパーセンテージと最初の数パーセントを表示する方法

目次必要とする実装コードデータベース数日前、友人からこれを書くのを手伝ってほしいと頼まれました。ただ...

Firefox の CSS を使用してデータを盗む

0x00 はじめに数か月前、Firefox に脆弱性 (CVE-2019-17016) があること...

Vue はタブ ラベルを実装します (ラベルが自動スクロールを超える)

作成されたタブラベルがページの表示領域を超えると、タブラベルの距離だけ自動的にスクロールされます。ま...

h5入力ボックスプロンプト+通常のテキストボックスプロンプトを実装する方法

XML/HTML コードコンテンツをクリップボードにコピー<入力 id = "ユーザ...

MySQL の中国語ソートの詳細と例

MySQL の漢字ソートの詳細な説明デフォルトでは、MySQL は日付、時刻、および英語の文字列の並...

効果的なウェブフォームのための 8 つのルール

ユーザーから情報を収集する場合、Web フォームを使用するより簡単で直接的な方法はありません。適切に...

Windows 10 に TomCat をインストールするチュートリアル図

WindowsにTomCatをインストールするこの記事では、WindowsプラットフォームにTomC...

Docker ベースの Tomcat クラスタと Nginx ロード バランシングの展開の概要

目次前面に書かれた1. Ngixnイメージの作成2. Java Web (Tomcat) アプリケー...