-
MySQL出力で返されるレコードの数をどのように指定できますか?
MySQLクエリにLIMIT句を追加することで、出力で返されるレコードの数を指定できます。 LIMIT句は、返される行数を制限します。次の例を考えてみましょう- mysql> Select * from ratelist ORDER BY Price; +----+------+-------+ | Sr | Item | Price | +----+------+-------+ | 5 | T | 250 | | 1 | A | 502 | | 2 | B
-
MySQLのトランザクションとはどういう意味ですか?その特性と一緒に説明しますか?
トランザクションは、データベース操作操作の順次グループであり、単一の作業単位であるかのように実行されます。つまり、グループ内の個々の操作が成功しない限り、トランザクションは完了しません。トランザクション内のいずれかの操作が失敗すると、トランザクション全体が失敗します。実際には、多くのSQLクエリをグループにまとめて、トランザクションの一部としてそれらすべてを一緒に実行できます。 トランザクションのプロパティ トランザクションには次の4つの標準プロパティがあり、通常は頭字語ACID-と呼ばれます。 アトミシティ −これにより、ワークユニット内のすべての操作が正常に完了します。それ以外の場合、ト
-
MySQLトランザクションをどのように実装できますか?
トランザクションでは、ステートメントは1つの単位として実行されます。トランザクション内のいずれかの操作が失敗した場合、トランザクション全体が失敗するため、ロールバックする必要があります。それ以外の場合、ステートメントによって行われた変更はすべてデータベースに保存されます。トランザクションを実装するために、MySQLは次のステートメントを提供します- トランザクションの開始 名前が示すように、トランザクションはこのステートメントで始まります。基本的に、トランザクションが終了するまで、後続のステートメントは単一のワークユニットとして扱われる必要があることをMySQLに通知します。 コミット CO
-
MySQLクエリが行を返さない場合はどうなりますか?
MySQLによって返された出力から、実行時間とともに結果セットに行がいくつあるかが非常に明確です。 例 たとえば、次のMySQL出力では、結果セットに3つの行があることがわかります。 mysql> Select * from ratelist ORDER BY Price LIMIT 3; +----+------+-------+ | Sr | Item | Price | +----+------+-------+ | 5 | T | 250 | | 1 | A | 502 |
-
MySQLでは、1つの出力行でカテゴリごとの合計値を取得するにはどうすればよいですか?
MySQL SUM()関数を使用すると、1つの出力行でカテゴリごとの合計値を取得できます。たとえば、テーブル「ratelist」で、カテゴリ「price」の合計値を取得する場合は、次のように価格でSUM()を使用できます- mysql> select SUM(price) as totalprice from ratelist; +------------+ | totalprice | +------------+ | 3237 | +------------+ 1 row in set (0.00 sec) 上記のクエリは、1つの出力行に価
-
MySQLはトランザクションの動作をどのように管理しますか?
MySQLは、次の2つのモードを使用してトランザクションの動作を管理できます- 自動コミットオン デフォルトのモードです。このモードでは、各MySQLステートメント(トランザクション内かどうかに関係なく)は完全なトランザクションと見なされ、デフォルトで終了時にコミットされます。次のようにセッション変数AUTOCOMMITを1に設定することで開始できます- SET AUTOCOMMIT = 1 mysql> SET AUTOCOMMIT = 1; Query OK, 0 rows affected (0.07 sec) 自動コミットオフ デフォルトのモードではありません。このモードでは、後
-
MySQLはステートメントの終わりをどのように判断しますか?
MySQLは、次のいずれかに遭遇したときにステートメントの終わりを決定します- セミコロン(;) 一般に、MySQLは、終了セミコロン(;)に遭遇すると、ステートメントの終わりを1行または複数行で判別します。以下の例を検討してください mysql> Select * from employee; (Single line statement) mysql> Select * -> from -> employee; (Multiple line statement) どちらの場合も、MySQLはセミコロンに
-
MySQLクエリ結果を垂直に表示するにはどうすればよいですか?
エゴ、\ Gを使用 ステートメントの最後にあるオプションを使用すると、結果セットを垂直形式で取得できます。次の例を検討してください − mysql> Select * from Student where name = 'Aarav'\G *************************** 1. row *************************** Name: Aarav RollNo: 150 Grade: M.SC 1 row in set (0.00 sec)
-
入力中のMySQLコマンドをキャンセルするにはどうすればよいですか?
入力しているコマンドを実行したくない場合は、現在の入力をクリアするclear\cオプションを使用できます。たとえば、\cオプションの使用は次のように実行できます- mysql> Select * -> from\c 上記の例では、ステートメントで\ cを使用すると、MySQLは現在の入力をクリアし、他のステートメントを受け入れるためにMySQLプロンプトに戻ります。
-
算術式でNULL値を使用すると、出力はどうなりますか?
NULLは値ではなく、ゼロと同じではないことがわかっています。 MySQLは、データベース列にデータが含まれていない場合、データベース列をNULLとして表します。ここで、算術式でNULLを使用すると、結果もNULLになります。 例 mysql> Select 65/NULL,65+NULL,65*NULL,65-NULL,65%NULL; +---------+---------+---------+---------+---------+ | 65/NULL | 65+NULL | 65*NULL | 65-NULL | 65%NULL | +---------+---------+-
-
MySQL WHERE句で2つの列を使用するにはどうすればよいですか?
WHERE句で同じテーブルの2つの列を使用することはめったにありませんが、同じテーブルの2つの列でクエリを実行できます。以下の例を考えてみましょう- mysql> Select F_name, L_name -> From Customer -> where F_name = L_name; Empty set (0.00 sec) ここでは、同じテーブル(顧客)の両方の列(F_NameとL_Name)を使用しているため、結果は空のセットになります。
-
MySQLクエリにテーブルリストがない場合の行と列の数に関する制限は何ですか?
注目すべきリストを持つMySQLクエリの制限は、結果として正確に1つの行を返すことができますが、その結果には複数の列を含めることができるということです。 例 mysql> Select 65/NULL,65+NULL,65*NULL,65-NULL,65%NULL; +------------+--------------+-------------+-------------+---------+ | 65/NULL | 65+NULL | 65*NULL | 65-NULL &
-
1つのMySQLデータベースに接続しているときに、他のMySQLデータベースのテーブルのリストを表示するにはどうすればよいですか?
データベース名からテーブルを表示の助けを借りて クエリを実行すると、別のデータベースのテーブルを確認できます。ここで、Database_nameは、現在使用していないデータベースの名前です。データベース名「tutorial」のテーブルのリストを取得するためのクエリを実行する次の例について考えてみます。 mysql> show tables from tutorial; +--------------------+ | Tables_in_tutorial | +--------------------+ | employee &nb
-
サブクエリを内部結合に変換するにはどうすればよいですか?
次の表のデータを使用していることを理解するために- mysql> Select * from customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | |
-
サブクエリをRIGHTJOINに変換するにはどうすればよいですか?
次の表のデータを使用していることを理解するために- mysql> Select * from Customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 &nbs
-
サブクエリをLEFTJOINに変換するにはどうすればよいですか?
次の表のデータを使用していることを理解するために- mysql> Select * from customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 &nbs
-
MySQLでは、複数行のステートメントをどのように記述できますか?
MySQLは、入力行の終わりを探すのではなく、終了セミコロンを探すことによってステートメントの終わりを決定するため、複数行のステートメントを記述できます。 例 mysql> Select * -> from -> stock_item; +------------+-------+----------+ | item_name | Value | Quantity | +------------+-------+----------+ | Calculator | 15 | 89 &
-
MySQLサブクエリにレコードが存在するかどうかをテストするにはどうすればよいですか?
MySQL EXIST演算子を使用して、サブクエリにレコードが存在するかどうかをテストできます。つまり、EXIST演算子は、サブクエリが行を返すかどうかをチェックすると言えます。 MySQLサブクエリでEXIST演算子を使用する構文は次のとおりです- 構文 WHERE EXISTS (Subquery) 上記のEXIST(サブクエリ)式は、サブクエリが少なくとも1つの行を返す場合はTRUEを返し、そうでない場合はfalseを返します。 例 次の表のデータを使用していることを理解するために- mysql> Select * from Customers; +-------------+-
-
NULLを返すサブクエリでEXISTS演算子を使用した場合、MySQLはどのように評価しますか?
EXIST演算子で使用されるサブクエリがNULLを返す場合、式EXIST NULLはTRUEを返し、MySQLは外部クエリに基づいた結果を返します。表「顧客」からの次のデータを使用した簡単な例を使用して理解できます- mysql> Select * from Customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2
-
行を返さないサブクエリでEXISTS演算子を使用した場合、MySQLはどのように評価しますか?
EXIST演算子で使用されるサブクエリが行を返さない場合、式EXISTはFALSEを返し、MySQLは空のセットを出力として返します。表「顧客」からの次のデータを使用した簡単な例を使用して理解できます- mysql> Select * from Customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | &