"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 중첩 쿼리를 사용하지 않고 MySQL의 쿼리 결과에서 사용자 변수를 할당하려면 어떻게 해야 합니까?

중첩 쿼리를 사용하지 않고 MySQL의 쿼리 결과에서 사용자 변수를 할당하려면 어떻게 해야 합니까?

2024-11-06에 게시됨
검색:117

How Can I Assign User Variables from Query Results in MySQL without Using Nested Queries?

MySQL의 쿼리 결과에서 사용자 변수 할당

배경 및 목표

쿼리 결과를 기반으로 사용자 정의 변수를 할당하면 데이터베이스 조작 기능이 향상됩니다. 이 문서에서는 중첩 쿼리에 의존하지 않고 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