mysqlにはforループがありますか?
Mysql には for ループがありません。 MySQL は for ループ ステートメントをサポートしていませんが、WHILE、REPEAT、LOOP の 3 つのループ ステートメントをサポートしています。 WHILE ループは各反復の開始時に式をチェックし、ポストテスト ループとも呼ばれる REPEAT ループ ステートメントはステートメントの実行後に式をチェックします。LOOP ステートメントはコード ブロックを繰り返し実行できます。
このチュートリアルの動作環境: Windows10 システム、mysql バージョン 8.0、Dell G3 コンピューター。
mysql のループ ステートメント
MySQL には、条件に基づいて SQL コードのブロックを繰り返し実行できるループ ステートメントが用意されています。
MySQL は for ループ ステートメントをサポートしていません .MySQL は while ループ、repeat ループ、loop ループのみをサポートします。
MySQL には、条件に基づいて SQL コードのブロックを繰り返し実行できるループ ステートメントが用意されています。 MySQL は for ループ ステートメントをサポートしていません。MySQL には、WHILE
、REPEAT
、LOOP
という 3 つのループ ステートメントがあります。
次のセクションで、各ループ ステートメントを詳しく調べます。
#WHILE ループ
WHILEステートメントの構文は次のとおりです:
WHILE expression DO statements END WHILE
WHILEループは、各反復の開始時に式をチェックします。
expressionevaluates が
TRUE の場合、MySQL は
expressionevaluates が ## になるまで、
WHILE と
END WHILE の間のステートメントを実行します。 #間違い###。
WHILEこのループは、ステートメントを実行する前に常にステートメントの式をチェックするため、プレテスト条件付きループと呼ばれます。
以下のフローチャートは、
WHILE
以下は、ストアド プロシージャ WHILE# で使用されます。 # #ループ ステートメントの例:
DELIMITER $$ DROP PROCEDURE IF EXISTS test_mysql_while_loop$$ CREATE PROCEDURE test_mysql_while_loop() BEGIN DECLARE x INT; DECLARE str VARCHAR(255); SET x = 1; SET str = ''; WHILE x <p>上記の <code>test_mysql_while_loop</code> ストアド プロシージャ: </p><p><code>まず、</code>str</p> 文字列を繰り返し構築します。 #xx
- 変数の値が
- 5
より大きくなるまで。
次に、SELECT ステートメントを使用して、最終的な文字列を表示します。
- 変数の値が初期化されていない場合、デフォルト値は NULL
WHILE ループ ステートメントの条件は常に TRUE となり、予測できない不定ループが発生します。
テストしてみましょう
test_mysql_while_loopstoredストアド プロシージャを呼び出します:
CALL test_mysql_while_loop();
上記のクエリ ステートメントを実行し、次の結果を取得します-
mysql> CALL test_mysql_while_loop(); +------------+ | str | +------------+ | 1,2,3,4,5, | +------------+ 1 row in set Query OK, 0 rows affected
# #REPEAT Loop
ループ ステートメントの構文は次のとおりです。 REPEAT
statements;
UNTIL expression
END REPEAT
) が FALSE
と評価される場合、MySQL は式が
と評価されるまでステートメントを繰り返し実行します。 REPEAT
ループ ステートメントはステートメントの実行後に式 (expression
) をチェックするため、REPEAT
ループ ステートメントはポストステートメントとも呼ばれます。テストループ。
次のフローチャートは、REPEAT
ループ ステートメントの実行プロセスを示しています。
REPEAT## を使用できます。 # ループ ステートメントは、WHILE
ループ ステートメントを使用して、
ストアド プロシージャを書き換えます。
DELIMITER $$ DROP PROCEDURE IF EXISTS mysql_test_repeat_loop$$ CREATE PROCEDURE mysql_test_repeat_loop() BEGIN DECLARE x INT; DECLARE str VARCHAR(255); SET x = 1; SET str = ''; REPEAT SET str = CONCAT(str,x,','); SET x = x + 1; UNTIL x > 5 END REPEAT; SELECT str; END$$ DELIMITER ;
UNTIL## にはセミコロンがないことに注意してください。 # 表現 ( ###;###)。 上記のクエリ ステートメントを実行すると、次の結果が得られます。
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">mysql> CALL mysql_test_repeat_loop();
+------------+
| str |
+------------+
| 1,2,3,4,5, |
+------------+
1 row in set
Query OK, 0 rows affected</pre><div class="contentsignin">ログイン後にコピー</div></div>
LOOP、LEAVE、および ITERATE ステートメント
2 つのステートメントを使用してループを制御できます。
LEAVE
ステートメントは、条件の確認を待たずにループを直ちに終了するために使用されます。LEAVE ステートメントの動作原理は、PHP、C/C 、Java およびその他の言語の break
ステートメントと似ています。- ITERATE
- ステートメントを使用すると、残りのコード全体をスキップして、新しい反復を開始できます。
ITERATE
ステートメントは、PHP
、C/C
、Java
などの Continue - ステートメントに似ています。
MySQL には、コード ブロックを繰り返し実行できる
LOOPステートメントと、ループ ラベルを使用できる柔軟性もあります。
次に、
LOOPループ ステートメントの使用例を示します。
CREATE PROCEDURE test_mysql_loop() BEGIN DECLARE x INT; DECLARE str VARCHAR(255); SET x = 1; SET str = ''; loop_label: LOOP IF x > 10 THEN LEAVE loop_label; END IF; SET x = x + 1; IF (x mod 2) THEN ITERATE loop_label; ELSE SET str = CONCAT(str,x,','); END IF; END LOOP; SELECT str; END;
ログイン後にコピー- 以上存储过程仅构造具有偶数字符串的字符串,例如
2
,4
,6
等。 - 在
LOOP
语句之前放置一个loop_label
循环标签。 - 如果
x
的值大于10
,则由于LEAVE
语句,循环被终止。 - 如果
x
的值是一个奇数,ITERATE
语句忽略它下面的所有内容,并开始一个新的迭代。 - 如果
x
的值是偶数,则ELSE
语句中的块将使用偶数构建字符串。
执行上面查询语句,得到以下结果 -
mysql> CALL test_mysql_loop(); +-------------+ | str | +-------------+ | 2,4,6,8,10, | +-------------+ 1 row in set Query OK, 0 rows affected
ログイン後にコピー【相关推荐:mysql视频教程】
- 以上存储过程仅构造具有偶数字符串的字符串,例如
以上がmysqlにはforループがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

小さなアプリケーションを開発する際には、軽量データベース操作ライブラリをすばやく統合する必要性という厄介な問題に遭遇しました。複数のライブラリを試した後、私はそれらがあまりにも多くの機能を持っているか、あまり互換性がないかのどちらかであることがわかりました。最終的に、私は問題を完全に解決したYii2に基づいた単純化されたバージョンであるMinii/DBを見つけました。

MySQLとPHPMyAdminは、強力なデータベース管理ツールです。 1)MySQLは、データベースとテーブルを作成し、DMLおよびSQLクエリを実行するために使用されます。 2)PHPMyAdminは、データベース管理、テーブル構造管理、データ操作、ユーザー許可管理のための直感的なインターフェイスを提供します。

他のプログラミング言語と比較して、MySQLは主にデータの保存と管理に使用されますが、Python、Java、Cなどの他の言語は論理処理とアプリケーション開発に使用されます。 MySQLは、データ管理のニーズに適した高性能、スケーラビリティ、およびクロスプラットフォームサポートで知られていますが、他の言語は、データ分析、エンタープライズアプリケーション、システムプログラミングなどのそれぞれの分野で利点があります。

記事の概要:この記事では、Laravelフレームワークを簡単にインストールする方法について読者をガイドするための詳細なステップバイステップの指示を提供します。 Laravelは、Webアプリケーションの開発プロセスを高速化する強力なPHPフレームワークです。このチュートリアルは、システム要件からデータベースの構成とルーティングの設定までのインストールプロセスをカバーしています。これらの手順に従うことにより、読者はLaravelプロジェクトのための強固な基盤を迅速かつ効率的に築くことができます。

MySQLは、Webアプリケーションやコンテンツ管理システムに適しており、オープンソース、高性能、使いやすさに人気があります。 1)PostgreSQLと比較して、MySQLは簡単なクエリと高い同時読み取り操作でパフォーマンスが向上します。 2)Oracleと比較して、MySQLは、オープンソースと低コストのため、中小企業の間でより一般的です。 3)Microsoft SQL Serverと比較して、MySQLはクロスプラットフォームアプリケーションにより適しています。 4)MongoDBとは異なり、MySQLは構造化されたデータおよびトランザクション処理により適しています。
