セミコロン(;)なしでMySQLクエリを実行する方法|\Gと\g組み込みコマンドの使い方
MySQLでは、ステートメント末尾のセミコロン(;)ターミネーター記号を使わなくても、組み込みコマンドを利用することでクエリを実行できます。代表例として「\G」と「\g」の2つがあり、どちらも文末に付けるだけでSQLをサーバーへ送信・実行できます。ただし、両者は出力形式が異なるため、用途に応じて使い分けると便利です。
\G(ego):結果を縦方向(垂直形式)で表示する
\Gオプションを使用すると、現在のステートメントがサーバーへ送信されて実行され、その結果が縦方向(垂直形式)で表示されます。ステートメントが1行でも複数行でも構いません。セミコロン(;)を省略して文末に\Gを付けると、MySQLは\Gを検出した時点でステートメントの終端として判断し、クエリを実行します。カラム数が多く横表示では読みにくい場合に特に役立ちます。以下に実行例を示します。
mysql> Select * from ratelist\G
*************************** 1. row ***************************
Sr: 1
Item: A
Price: 502
*************************** 2. row ***************************
Sr: 2
Item: B
Price: 630
*************************** 3. row ***************************
Sr: 3
Item: C
Price: 1005
*************************** 4. row ***************************
Sr: 4
Item: h
Price: 850
*************************** 5. row ***************************
Sr: 5
Item: T
Price: 250
5 rows in set (0.00 sec)\g(go):セミコロンと同じ形式で実行する
\gオプションを使用すると、現在のステートメントがサーバーへ送信されて実行されます。こちらも1行・複数行どちらのステートメントでも、セミコロン(;)を省略して文末に\gを付ければ、MySQLは\gを検出した時点でステートメントの終端として判断します。出力形式はセミコロン(;)を使った場合とまったく同じで、表形式(水平表示)で結果が返されます。以下に実行例を示します。
mysql> Select * from ratelist\g +----+------+-------+ | Sr | Item | Price | +----+------+-------+ | 1 | A | 502 | | 2 | B | 630 | | 3 | C | 1005 | | 4 | h | 850 | | 5 | T | 250 | +----+------+-------+ 5 rows in set (0.00 sec)
まとめ:\Gと\gの違い
- \G:クエリを実行し、結果を縦方向(垂直形式)で表示する。カラム数が多い場合の確認に便利。
- \g:クエリを実行し、結果をセミコロン使用時と同じ表形式で表示する。
このように、セミコロン(;)がなくても\Gや\gを使えばMySQLのクエリを問題なく実行できます。特に\Gは、大量のカラムを持つテーブルを確認したいときのデバッグ作業などで重宝するコマンドです。
-
Java JDBCでMySQLのCOUNTクエリを実行したときの戻り値の型は何?取得方法を解説
COUNT関数の戻り値の型は「long」 MySQLのCOUNT()関数をJava JDBCから実行した場合、戻り値の型はlong型になります。結果を取得するには、ResultSetのgetLong()メソッドを使用します。 rs.next(); long result = rs.getLong(anyAliasName); 以下では、サンプルデータベース「test3」を使って、実際にテーブルを作成し、COUNTクエリの結果をJavaで取得する手順を順番に解説します。 1. サンプルテーブルの作成 まず、テスト用のテーブルを作成します。テーブル作成用のSQLは次のとおりです。 mysql&g
-
PHPのコンストラクターはクラス名ではなく__construct()を使うべき?その利点を解説
はい、クラス名をそのままコンストラクターとして使う代わりに、マジックメソッド __construct() を使用することには、いくつかの重要な利点があります。 __construct() を使う主な利点 クラス名の変更に強い: マジックメソッド __construct() はPHP 5で導入されました。クラス名と同じ名前のメソッドをコンストラクターにすると、後からクラス名を変更した際にコンストラクター名も修正する必要があります。__construct() を使えばその手間がなく、DRY(Dont Repeat Yourself) の原則にも沿った保守性の高いコードになります。 親クラスのコン