質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

mysqli

MySQLiはPHP5より導入されているデータベース用のドライバです。MySQL 4.1.3以降の新しい機能の利点をまとめています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

6回答

3227閲覧

order byに関して分からないことがあります

a-_.

総合スコア133

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

mysqli

MySQLiはPHP5より導入されているデータベース用のドライバです。MySQL 4.1.3以降の新しい機能の利点をまとめています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2016/07/12 07:25

編集2016/09/06 02:11

ORDER BY ~ DESCってどういう意味ですか

追記
テーブル:「name(int)」「comment(varchar)」「time(timestamp)」
リンク内容

PHP

1$mysqli = new mysqli($host, $user, $password, $dbname); 2if ($mysqli->connect_error){ 3 print("接続失敗:" . $mysqli->connect_error); 4 exit(); 5 } 6 7 $stmt = $mysqli->prepare("INSERT INTO XXX (name, comment) VALUES (?, ?)"); 8 $stmt->bind_param('ss', $_POST["name"], $_POST["comment"]); 9 $stmt->execute(); 10 11 $query = "SELECT * FROM XXX"; 12 13 $result = $mysqli->query("SELECT * FROM XXX ORDER BY time DESC"); 14if($result){ 15 while($row = $result->fetch_object()){ 16 $name = htmlspecialchars($row->name); 17 $comment = htmlspecialchars($row->comment); 18 } 19} 20 21$mysqli->close(); 22

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/07/12 07:55

INSERT INTO文やSELECT文の対象になっているテーブルの構造を示してもらわないと、SQL文から想像したあてずっぽうな回答にしかなりませんので、簡単にでもテーブル構造を示してください。どういうカラムを含んだテーブルなのかと。あるいは、プログラミングを学習しているところなのであれば参考にしているサイトやドキュメントのたぐいも示してください。
退会済みユーザー

退会済みユーザー

2016/07/12 07:57

後に似たようなケースの質問を招かないよう、適切な質問の題名をつけてください。例えば「ORDER BY created DESCの部分がわかりません」とか。質問につけるタグも、PHPだけでなくMySQLもつけるとより素早く解決に近づくと思います。
a-_.

2016/07/12 08:06

m6uさん 失礼しました 訂正いたしました
guest

回答6

0

ORDER BY created DESCってどういう意味ですか

selectの部分が見れませんが、選択テーブルには、createdという項目名が存在して、この項目の降順に出力したいのでは無いでしょうか?

追記:テーブルXXXには項目createdが有りdefault current_timestampの設定がされている??
Mysqlはcreated項目が自動的に存在しているのですね、訂正です。

投稿2016/07/12 07:29

編集2016/07/12 07:48
A.Ichi

総合スコア4070

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

a-_.

2016/07/12 07:49

ご回答ありがとうございます デフォルト値:CURRENT_TIMESTAMP created項目はありません。
guest

0

STEP1-7の手順通りにテーブルを作成していれば、
テーブルにcreatedというカラムが作成され、
STEP1-9でのSELECT文でORDER BY created DESCというのは、
そのcreatedカラムのデータを降順で並べ替えて取得する意味になります。


以下余談。
実務においても、データを登録した日付時刻やデータを更新した日付時刻で並べ替えする場面があり、
created_atやupdated_atなどのカラム名でtimestamp型でテーブルに持たせることがあります。
昇順に並べ替えるときはASC、降順に並べ替えるときはDESCですが、ASCは大概省略されます。

投稿2016/07/12 08:24

編集2016/07/12 08:28
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

a-_.

2016/07/12 08:26

ご回答ありがとうございます 降順という意味ではarsortとはまた異なるのでしょうか
退会済みユーザー

退会済みユーザー

2016/07/12 08:30

並べ替えをデータベース側にやってもらうために、SQL文にORDER BY句をつけていますよね。 これ、データを全部抽出してPHP側でsort()やarsort()などでやれそうな気がしますが、データ件数が何万行何百万行となっていった場合にPHP側では捌ききれません。データの並べ替えなどデータ処理は(データ処理に特化している)データベースに任せるべきなのです。
guest

0

抽出結果をcreatedカラムの降順にソートするということです。

まず自分で調べましょう。
タイトルから内容が想像できません。不適切です。
タグが違います。SQLについての質問なので、SQLMySQLなど適切なタグをつけてください。

投稿2016/07/12 07:32

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

投稿2016/07/12 08:30

syosinsyapurogu

総合スコア64

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

https://team-lab.github.io/skillup/1/7.html
STEP1-7.データベースを作成してみる
にて以下のような3つのカラムがあるdatasテーブルを作成しましょうとありますが
そのように作りましたか?

名前 データ型 照合順序 デフォルト値
name TEXT utf8_general_ci
message TEXT utf8_general_ci
created TIMESTAMP CURRENT_TIMESTAMP

投稿2016/07/12 08:11

date

総合スコア1820

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

a-_.

2016/07/12 08:13

ご回答ありがとうございます createdの箇所はtimeです
date

2016/07/12 08:14

でORDER BY created DESCってどういう意味ですかの答えは STEP1-8.SQLを書いてみる https://team-lab.github.io/skillup/1/8.html ORDER BY句 に答えがあるのです ORDER BY句 データの並び順を指定します。 SELECT * FROM datas ORDER BY created DESC これは日付の若い順(降順)に取り出すクエリです。
guest

0

ベストアンサー

MySQL マニュアル DESC

でググりましたか?
最初にヒットした
MySQL 5.6 リファレンスマニュアル...SELECT 構文

逆の順序でソートするには、ソートに使用する ORDER BY 句内のカラムの名前に DESC (降順) キーワードを追加します。

が見つかります。
SQLはなめてかからないで、きちんと勉強してください。

投稿2016/07/12 09:34

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問