MySQLでselectステートメントを使用してストアドプロシージャを呼び出す方法は?
MySQLでは、FROM句でselectfromプロシージャを使用することはできません。 CALLコマンドを使用すると、その後SELECTステートメントを実行できます。
最初にテーブルを作成しましょう:
mysql> create table DemoTable2 -> ( -> CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> CustomerName varchar(100), -> ShippingDateTime datetime -> ); Query OK, 0 rows affected (0.66 sec)>
ストアドプロシージャを作成するためのクエリは次のとおりです。
mysql> DELIMITER // mysql> CREATE PROCEDURE insert_information(Name varchar(100),shippingtime datetime) -> BEGIN -> -> INSERT INTO DemoTable2(CustomerName,ShippingDateTime) VALUES(Name,shippingtime); -> END -> // Query OK, 0 rows affected (0.16 sec) mysql> DELIMITER ;
これで、callコマンドを使用してストアドプロシージャを呼び出すことができます:
mysql> call insert_information('Chris',NOW()); Query OK, 1 row affected, 1 warning (0.15 sec)
これは、ストアドプロシージャを呼び出した後、selectステートメントを使用してテーブルのレコードを表示するためのクエリです。
mysql> select *from DemoTable2;
これにより、次の出力が生成されます
+------------+--------------+---------------------+ | CustomerId | CustomerName | ShippingDateTime | +------------+--------------+---------------------+ | 1 | Chris | 2019-04-08 15:03:07 | +------------+--------------+---------------------+ 1 row in set (0.00 sec)
-
MySQLでCOUNTを使用してSELECTを実行するにはどうすればよいですか?
COUNTでSELECTを実行するには、集計関数COUNT()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(100), Subject varchar(100) ); Query OK, 0 rows affected (0.54 sec) 挿入コマンド-を使用して、テーブルにいくつ
-
「select」ステートメントを2回表示するMySQLプロシージャ
理解するために、ストアドプロシージャを作成しましょう。ここでは、ストアドプロシージャに2つのselectステートメントがあります- mysql> DELIMITER // mysql> CREATE PROCEDURE select_statement() -> BEGIN -> SELECT "HI" AS `FIRST VALUE`; -> SELECT "HELLO" AS `SECOND