programing

MariaDB 루프가 쿼리 결과를 표시하지 않음

batch 2023. 9. 8. 21:19
반응형

MariaDB 루프가 쿼리 결과를 표시하지 않음

간단한 질문이 있습니다.

SELECT COUNT(ud.UserID), COUNT(DISTINCT ud.ProductID)
FROM users_data AS ud
    JOIN products AS t ON t.ID = ud.ProductID
WHERE ud.UserID = '3'

결과는 다음과 같습니다.

COUNT(ud.UserID)    COUNT(DISTINCT ud.ProductID)
519                 425

잠시 후 또는 루프를 포함하려고 할 때:

DELIMITER //

SET @i = 0;
FOR i IN 1..10
DO SELECT COUNT(ud.UserID), COUNT(DISTINCT ud.ProductID)
  FROM users_data AS ud
    JOIN products AS t ON t.ID = ud.ProductID
  WHERE ud.UserID = (i)
END FOR
//

다음 외에는 출력이 없습니다.

Query executed OK, 0 rows affected.

제가 놓친 게 또 있나요?감사해요.

왜 당신은 a를 사용하고싶습니까?loop? 간단한 쿼리로 수행하는 것이 훨씬 좋습니다.

SELECT ud.UserId, COUNT(*), COUNT(DISTINCT ud.ProductID)
FROM users_data ud 
GROUP BY ud.UserID;

특정 사용자를 원할 경우 다음을 사용할 수 있습니다.WHERE조항:

SELECT ud.UserId, COUNT(*), COUNT(DISTINCT ud.ProductID)
FROM users_data ud 
WHERE ud.UserId IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
GROUP BY ud.UserID;

참고: 제 생각에는.JOIN필요합니다.

질문에 대한 답변은 다음의 정의에 있습니다.DO. 쿼리를 수행한 다음 결과를 버리라고 정의됩니다.

언급URL : https://stackoverflow.com/questions/54700958/mariadb-loop-not-displaying-results-of-query

반응형