2012年8月20日月曜日

5.2 データの検索(3)


5.2.5 出力レコード数の制限

表示するレコード数は、LIMITで指定できます。
SELECT 列名FROM テーブル名LIMIT 出力レコード数;
次の例では、出力レコード数を3に指定しています。

mysql> SELECT * FROM staff LIMIT 3;
+----+-----------+------+------+
| id | name | age | bid |
+----+-----------+------+------+
| 1 | Sato | 23 | 1 |
| 2 | Suzuki | 24 | 2 |
| 3 | Takahashi | 28 | 1 |
+----+-----------+------+------+

 5.2.6 ソート


ORDER BY句を使うと、任意の項目でソートして出力することができます。
デフォルトは昇順です。
SELECT 列名FROM テーブル名ORDER BY 順序指定;
次の例では、age列を昇順にソートして出力します。

mysql> SELECT * FROM staff ORDER BY age;
+----+-----------+------+------+
| id | name | age | bid |
+----+-----------+------+------+
| 1 | Sato | 23 | 1 |
| 2 | Suzuki | 24 | 2 |
| 4 | Tanaka | 26 | 3 |
| 3 | Takahashi | 28 | 1 |
| 5 | Watanabe | 30 | 2 |
+----+-----------+------+------+
DESCを指定すると、昇順ではなく降順でソートされます。

mysql> SELECT * FROM staff ORDER BY age DESC;
+----+-----------+------+------+
| id | name | age | bid |
+----+-----------+------+------+
| 5 | Watanabe | 30 | 2 |
| 3 | Takahashi | 28 | 1 |
| 4 | Tanaka | 26 | 3 |
| 2 | Suzuki | 24 | 2 |
| 1 | Sato | 23 | 1 |
+----+-----------+------+------+


5.2.7 ファイルへの出力

SELECT文の実行結果をファイルに出力することもできます。
SELECT 列名FROM テーブル名INTO OUTFILE 出力ファイル名;
次の例では、ファイルtest.txtに検索結果が出力されます。

mysql> SELECT * FROM staff INTO OUTFILE 'test.txt';

デフォルトでは、データベースファイルのあるディレクトリ(/var/lib/mysql以下など)に出力されます。

# cat /var/lib/mysql/testdb/test.txt
1 Sato 23 1
2 Suzuki 24 2
3 Takahashi 28 5
4 Tanaka 26 3
5 Watanabe 30 2

0 件のコメント:

コメントを投稿