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 サイトの他の関連記事を参照してください。