programing

Mysql에도 mssql과 같은 @@ROWCOUNT가 있습니까?

lastcode 2023. 9. 9. 09:32
반응형

Mysql에도 mssql과 같은 @@ROWCOUNT가 있습니까?

MySQL에서 행 수 값을 다음과 같이 가져오려면 어떻게 해야 합니까?@@ROWCOUNTmssql에 있습니까?

SELECT의 경우에는FOUND_ROWS구성(여기에 표시됨):

SELECT SQL_CALC_FOUND_ROWS something FROM your_table WHERE whatever;
SELECT FOUND_ROWS( ) ;

마지막 행의 수를 반환합니다.SELECT쿼리(또는 첫번째 쿼리에 다음이 있는 경우)LIMIT조항, 그것은 그들이 없었더라면 있었던 행의 숫자를 반환합니다.LIMIT).

위해서UPDATE/DELETE/INSERT, ROW_COUNT 컨스트럭트입니다.

INSERT INTO your_table VALUES (1,2,3);
SELECT ROW_COUNT();

영향을 받는 행의 수를 반환합니다.

mysql> SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name

    -> WHERE id > 100 LIMIT 10;

mysql> SELECT FOUND_ROWS();

자세한 내용은 여기에서 확인하시기 바랍니다.

가장 간단한 방법은 변수를 사용하는 것입니다.

mysql> SELECT @rowcount:=COUNT(*) FROM my_table;
mysql> SELECT @rowcount;

아니면 사용해도 좋습니다.FOUND_ROWS()SELECT 문에 SQL_CALC_FOUND_ROWs를 넣은 후 구성합니다.

mysql> SELECT SQL_CALC_FOUND_ROWS * FROM my_table;
mysql> SELECT FOUND_ROWS();

다른 방법이 있습니다.

CREATE TEMPORARY TABLE `results` AS ( *** Your query without LIMIT *** );

행 수 가져오기

SELECT COUNT(*) FROM `results`;

하위 집합 가져오기

SELECT * FROM `results` LIMIT 5,10;

임시 테이블은 현재 세션에만 있습니다.나는 그 후에도 여전히 청소를 할 것입니다.

DROP TEMPORARY TABLE `results`;

where 절에서 하위 쿼리의 행 수를 계산합니다.그런 다음 총 행 수가 0보다 큰지 검정합니다.

CELECT 고객번호, customerName, creditLimit From customers (고객에서 총 수(*)) > 0인 경우

언급URL : https://stackoverflow.com/questions/47513935/1064-you-have-an-error-in-your-sql-syntax-near-if

반응형