mysqlにおけるvarcharの日付比較とソートの実装
mysqlでは、日付は通常datetimeやtimestampなどの形式で保存されますが、特別なニーズや歴史的な理由により、日付がvarchar形式で保存されることがあります。このvarchar形式の日付データはどのように扱えばいいのでしょうか?
関数を使用します。STR_TO_DATE(str、format)を使用します。
STR_TO_DATE(str, format)関数は、DATE_FORMAT()関数の逆関数です。この関数は、文字列strとフォーマット文字列formatを受け取ります。STR_TO_DATE()は、書式文字列が日付と時刻の部分を含んでいればDATETIME値を、日付と時刻の部分のみを含んでいれば日付または時刻の値を返します。
以下に例を挙げて説明する。
例えば、今、以下のような構造の会員制テーブルを持っています。
テーブルには以下のデータを作成しました。
さて、この中から2018年8月に登録した会員をすべてピックアップして、登録時刻順に並べ替える必要がある場合、どうすればいいでしょうか。ここに参考資料が示されています。
SELECT id,nickname,createtime
FROM member
WHERE str_to_date(createtime, '%Y-%m-%d') BETWEEN str_to_date('2018-08-01', '%Y-%m-%d') AND str_to_date('2018-08-31', '%Y-%m-%d')
ORDER BY str_to_date(createtime, '%Y-%m-%d')
実行結果は次のようになります。
まとめると STR_TO_DATE(str, format)関数は、varchar型のデータベースの日付データをDATETIME型の日付データに変換することができ、変換プロセスはformatパラメータがstrの形式に対処する必要があることに注意して、我々は比較、ソートやその他の操作ができます!この関数を使用すると、データベースの日付データをDATETIME型の日付データに変換できます。
比較、ソートおよびその他の操作のためのmysqlのvarchar型の日付の実装に関するこの記事は、このに導入され、より関連するmysqlのvarchar型の比較ソートコンテンツは、スクリプト家の以前の記事を検索するか、次の関連記事を閲覧し続けることを願ってあなたは、スクリプト家をよりサポートします!...
関連
-
MySQLのデータバックアップにmysqldumpを使用する方法
-
MySQL Innodb インデックスメカニズム詳細解説
-
MySQLデータベース・インデックスの左端一致の原則
-
MySQLデータベースでvarchar型の数値の大きさを比較する方法
-
MySQLデータベースで数百万件のデータを10秒間で挿入
-
[解決済み】MySQL - オペランドは1つのカラムを含む必要があります。
-
[解決済み] 親の行を削除または更新できない:外部キー制約が失敗する
-
[解決済み】マルチパート識別子をバインドできない
-
[解決済み】SQLサーバーのテンポラリーテーブルで「すでに名前のついたオブジェクトがあります」エラーが発生する。
-
Mysql がエラーを報告 オペランドには 1 つのカラムが含まれている必要があります。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ジョイントインデックスのためのmysqlの条件とインデックスが失敗するための条件
-
MySqlの整数インデックスと文字列インデックスの失敗または暗黙の変換問題
-
MySQLのLike演算子に関する詳細
-
MySQLはこのようなUpdateステートメントを書くべきではありません
-
面接では選択式で聞かれましたが......。.for updateはテーブルをロックするか、行をロックするか?
-
mysqlインデックスが長すぎる特殊なキーが長すぎる解決策
-
MySQL XAが分散型トランザクションを実装する方法を1記事にまとめました。
-
sql エラーを解決する オペランドには1つの列が含まれている必要があります。
-
Mysql がエラーを報告 オペランドには 1 つのカラムが含まれている必要があります。
-
SQLException。オペランドは1列でなければなりません。