ホームページ > データベース > mysql チュートリアル > MySQL の日付を DD/MM/YYYY 形式で並べ替えるにはどうすればよいですか?

MySQL の日付を DD/MM/YYYY 形式で並べ替えるにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-13 07:30:10
オリジナル
696 人が閲覧しました

How to Sort MySQL Dates in DD/MM/YYYY Format?

DD/MM/YYYY 形式での MySQL 日付のクエリ

MySQL では、通常、日付の順序付けは YYYY-MM-DD 形式に基づきます、与えられた例で説明したように。ただし、特定のシナリオでは、日付を DD/MM/YYYY などの別の形式で並べ替える必要がある場合があります。この記事では、この代替日付順序を実現するためにクエリを変更する方法について説明します。

間違ったアプローチ:

提供されたコードは、DATE_FORMAT を使用して日付を数値に変換しようとしています。 string:

SELECT * FROM $table ORDER BY DATE_FORMAT(Date, '%Y%m%d') DESC LIMIT 14
ログイン後にコピー

ただし、このアプローチは単に数値文字列を並べ替えるのではなく、正しくありません。実際の日付。

正しいアプローチ:

日付を DD/MM/YYYY 形式で適切に並べ替えるには、2 つのオプションがあります:

1.出力のフォーマット:

実際の並べ替え順序を変更せずに出力を DD/MM/YYYY でフォーマットするだけの場合は、次のクエリを使用します。

SELECT *, DATE_FORMAT(date,'%d/%m/%Y') AS niceDate 
FROM table 
ORDER BY date DESC 
LIMIT 0,14
ログイン後にコピー

この例ではこの場合、日付値は元の形式のままですが、日付を DD/MM/YYYY で表示する新しい列 niceDate が追加されます。形式。

2.日付による並べ替えコンポーネント:

実際に日付を日順、月順、年順に並べ替える必要がある場合は、より複雑なクエリを使用します:

SELECT *
FROM table
ORDER BY DAY(date) DESC, MONTH(date) DESC, YEAR(date) DESC
LIMIT 0,14
ログイン後にコピー

これクエリは、個々の日付コンポーネント (日、月、年) を抽出し、指定されたルールに基づいて降順に並べ替えます。

以上がMySQL の日付を DD/MM/YYYY 形式で並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート