クエリ結果に基づいてユーザー定義変数を割り当てると、データベース操作機能が強化されます。この記事では、ネストされたクエリに頼らずに MySQL でこれを実現する方法について説明します。
一般的な考えに反して、ユーザー変数の割り当てはクエリに直接統合できます。 SET ステートメントの代入演算子は、= または := のいずれかです。ただし、= は比較用に予約されているため、:= は他のステートメント内で使用する必要があります。
この手法を説明するために、USER と GROUP が一意であると仮定します。次のクエリ シーケンスは、機能を示しています。
SET @user := 123456; SELECT @group := `group` FROM USER WHERE user = @user; SELECT * FROM USER WHERE `group` = @group;
次のデータを含むサンプル テーブルの使用:
CREATE TABLE user (`user` int, `group` int); INSERT INTO user VALUES (123456, 5); INSERT INTO user VALUES (111111, 5);
クエリの結果は次のとおりです:
-------- ------- | user | group | -------- ------- | 123456 | 5 | | 111111 | 5 | -------- -------
代わりに、次の構文を使用できます:
SET @user := 123456; SELECT `group` FROM user LIMIT 1 INTO @group; SELECT * FROM user WHERE `group` = @group;
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3