Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 데이터베이스의 모든 테이블 레코드 수 한 번에 조회하는 방법

MySQL 데이터베이스의 전체 레코드 수 확인하기

MySQL에서 데이터베이스에 속한 모든 테이블의 레코드(행) 수를 한 번에 구하려면, INFORMATION_SCHEMA.TABLES 뷰의 TABLE_ROWS 컬럼과 집계 함수 SUM()을 함께 사용하면 됩니다. 각 테이블을 일일이 COUNT(*)로 조회하는 것보다 훨씬 간편합니다.

전체 레코드 수를 구하는 기본 문법

SELECT SUM(TABLE_ROWS)
   FROM INFORMATION_SCHEMA.TABLES
   WHERE TABLE_SCHEMA = 'yourDatabaseName';

'yourDatabaseName' 부분을 실제 데이터베이스 이름으로 바꿔 실행하면 해당 데이터베이스 전체의 레코드 합계가 반환됩니다.

실행 예시

예를 들어 business 데이터베이스의 전체 레코드 수를 구하는 쿼리는 다음과 같습니다.

mysql> SELECT SUM(TABLE_ROWS)
    -> FROM INFORMATION_SCHEMA.TABLES
    -> WHERE TABLE_SCHEMA = 'business';

실행 결과

+-----------------+
| SUM(TABLE_ROWS) |
+-----------------+
|             450 |
+-----------------+
1 row in set (13.54 sec)

위 결과를 보면 business 데이터베이스의 모든 테이블에 저장된 레코드는 총 450개입니다.

테이블별 레코드 수 개별적으로 조회하기

데이터베이스 전체 합계가 아니라 각 테이블의 레코드 수를 따로 확인하고 싶다면, TABLE_NAMETABLE_ROWS 컬럼을 함께 조회하면 됩니다.

mysql> SELECT table_name, table_rows
    -> FROM INFORMATION_SCHEMA.TABLES
    -> WHERE TABLE_SCHEMA = 'business';

실행 결과

+------------------------------------------------------------------+------------+
| TABLE_NAME                                                       | TABLE_ROWS |
+------------------------------------------------------------------+------------+
| add1daydemo                                                      |          2 |
| addcheckconstraintdemo                                           |          0 |
| addcolumntable                                                   |          0 |
| addconstraintdemo                                                |          2 |
| adding5hours                                                     |          2 |
| addingunique                                                     |          2 |
| addnotnulldemo                                                   |          2 |
| alphademo                                                        |          0 |
| autoincrement                                                    |          4 |
| autoincrementtable                                               |          5 |
| backticksymbol                                                   |          4 |
| bitdemo                                                          |          2 |
| blobtabledemo                                                    |          0 |
| bookindexes                                                      |          4 |
| booleandemo                                                      |          0 |
| chardemo                                                         |          0 |
| checkdemo                                                        |          0 |
| checkingintegerdemo                                              |          2 |
| clonestudent                                                     |          3 |
| college                                                          |          0 |
| colortable                                                       |          0 |
| columnexistdemo                                                  |          0 |
| columnnameasnumberdemo                                           |          2 |
| columnnamewithspace                                              |          4 |
| columnslist                                                      |          0 |
| columnvaluenulldemo                                              |          2 |
| commaseperatedemo                                                |          2 |
| commentdemo                                                      |          0 |
| commentdemo2                                                     |          0 |
| commentdemo3                                                     |          0 |
| countrycitydemo                                                  |          2 |
| currentdatetime                                                  |          0 |
| currenttimeadding2hours                                          |          0 |
| currenttimezone                                                  |          1 |
| dateadddemo                                                      |          0 |
| datetimedemo                                                     |          3 |
| deletedemo                                                       |          5 |
| deleterecord                                                     |          6 |
| demo                                                             |          2 |
| demo1                                                            |          0 |
| demoascii                                                        |          2 |
| demoauto                                                         |          2 |
| demobcrypt                                                       |          0 |
| demoemptyandnull                                                 |          0 |
| demoint                                                          |          0 |
| demoonreplace                                                    |          2 |
| demoschema                                                       |          0 |
| demowhere                                                        |          2 |
| distcountdemo                                                    |          4 |
| distinctdemo                                                     |          8 |
| distinctdemo1                                                    |          4 |
| duplicatebookindexes                                             |          4 |
| duplicatedeletedemo                                              |          4 |
| duplicatefound                                                   |          4 |
| employeeinformation                                              |          2 |
| employeerecords                                                  |          0 |
| employeetable                                                    |          0 |
| enumdemo                                                         |          2 |
| enumvalues                                                       |          0 |
| escapedeom                                                       |          0 |
| existsrowdemo                                                    |          4 |
| findandreplacedemo                                               |          4 |
| finddemo                                                         |          2 |
| firsttable                                                       |          2 |
| firsttabledemo                                                   |          3 |
| foreigntable                                                     |          2 |
| foreigntabledemo                                                 |          2 |
| functionindexdemo                                                |          0 |
| functiontriggersdemo                                             |          0 |
| groupconcatenatedemo                                             |          4 |
| groupdemo                                                        |          4 |
| groupdemo1                                                       |          4 |
| groupt_concatdemo                                                |          4 |
| ifelsedemo                                                       |          4 |
| imagedemo                                                        |          2 |
| incasesensdemo                                                   |          4 |
| indexingdemo                                                     |          0 |
| insertingemojidemo                                               |          1 |
| insubquerydemo                                                   |          2 |
| int1demo                                                         |          0 |
| intdemo                                                          |          2 |
| ipv4addressdemo                                                  |          0 |
| ipv6demo                                                         |          0 |
| jasonasmysqldemo                                                 |          2 |
| keydemo                                                          |          2 |
| last10recordsdemo                                                |         12 |
| lastinsertiddemo                                                 |          3 |
| lastinsertrecordiddemo                                           |          3 |
| latandlangdemo                                                   |          0 |
| lengthandcharlengthdemo                                          |          1 |
| limitoffsetdemo                                                  |         11 |
| lowcardinality                                                   |          2 |
| milliseconddemo                                                  |          0 |
| modifycolumnnamedemo                                             |          0 |
| modifydatatype                                                   |          0 |
| moneydemo                                                        |          2 |
| moviecollection                                                  |          6 |
| multipleindexdemo                                                |          0 |
| multiplerecordwithvalues                                         |          4 |
| myisamtabledemo                                                  |          2 |
| myisamtoinnodbdemo                                               |          0 |
| mytable                                                          |          0 |
| mytable1                                                         |          0 |
| mytabledemo                                                      |          2 |
| newstudent                                                       |          0 |
| nextiddemo                                                       |          2 |
| nextpreviousdemo                                                 |          9 |
| nonasciidemo                                                     |          4 |
| nthrecorddemo                                                    |          4 |
| nulldemo                                                         |          0 |
| nullwithselect                                                   |          6 |
| numbercolumndemo                                                 |          0 |
| numberofcolumns                                                  |          2 |
| ondemo                                                           |          4 |
| orderdemo                                                        |          2 |
| originaltable                                                    |          4 |
| parentdemo                                                       |          0 |
| pasthistory                                                      |          4 |
| presenthistory                                                   |          2 |
| primarytable                                                     |          2 |
| primarytable1                                                    |          2 |
| primarytabledemo                                                 |          2 |
| proctabledemo                                                    |          3 |
| querybetweentwodates                                             |          0 |
| querydatedemo                                                    |          0 |
| qutesdemo                                                        |          2 |
| randomoptimizationdemo                                           |          8 |
| randoptimizedemo                                                 |         26 |
| repairtabledemo                                                  |          3 |
| rowcountdemo                                                     |          8 |
| rowintocolumn                                                    |          4 |
| rownumberdemo                                                    |          4 |
| rowstranspose                                                    |          2 |
| rowstransposedemo                                                |          4 |
| rowvaluedemo                                                     |          8 |
| saveintotextfile                                                 |          2 |
| saveoutputintext                                                 |          0 |
| schemadatabasemethoddemo                                         |          0 |
| secondtable                                                      |          2 |
| secondtabledemo                                                  |          2 |
| sequencedemo                                                     |          7 |
| singlequotesdemo                                                 |          2 |
| smallintdemo                                                     |          0 |
| sortingvarchardemo                                               |          6 |
| sourcetable                                                      |          4 |
| spacecolumn                                                      |          2 |
| stringoccurrencedemo                                             |          3 |
| stringtodatedemo                                                 |          0 |
| student                                                          |          2 |
| studentenrollment                                                |          0 |
| studentrecordwithmyisam                                          |          0 |
| studenttable                                                     |          4 |
| swappingtwocoulmnsvaluedemo                                      |          5 |
| table1                                                           |          2 |
| table2                                                           |          3 |
| tabledemo                                                        |          0 |
| tabledemo2                                                       |          0 |
| tabledemo3                                                       |          0 |
| tableforeign                                                     |          0 |
| tablename1tablename1tablename1tablename1tablename1tablename1demo |          0 |
| tablepri                                                         |          0 |
| tbldemotrail                                                     |          6 |
| tblf                                                             |          0 |
| tblfirst                                                         |          2 |
| tblfunctiontrigger                                               |          0 |
| tblifdemo                                                        |          4 |
| tblnull                                                          |          0 |
| tblp                                                             |          0 |
| tblselectdemo                                                    |          6 |
| tblstudent                                                       |          2 |
| tbluni                                                           |          0 |
| tblupdatelimit                                                   |          8 |
| textdemo                                                         |          0 |
| textintonumberdemo                                               |          4 |
| texttabledemo                                                    |          0 |
| texturl                                                          |          0 |
| timestampdemo                                                    |          0 |
| timestamptodatedemo                                              |          0 |
| tinyint1demo                                                     |          0 |
| tinyintdemo                                                      |          2 |
| trailingandleadingdemo                                           |          2 |
| transcationdemo                                                  |          2 |
| triggedemo                                                       |          0 |
| trigger1                                                         |          0 |
| trigger2demo                                                     |          0 |
| trimdemo                                                         |          2 |
| trimdemo2                                                        |          0 |
| truefalsetable                                                   |          0 |
| uniondemo1                                                       |          3 |
| uniondemo2                                                       |          7 |
| uniqueautoid                                                     |          3 |
| uniqueconstdemo                                                  |          2 |
| uniquedemo                                                       |          2 |
| uniquedemo1                                                      |          2 |
| unsigneddemo                                                     |          2 |
| updatewithlimit                                                  |          5 |
| updtable                                                         |          4 |
| usernameandpassworddemo                                          |          2 |
| varchardemo                                                      |          0 |
| varchardemo1                                                     |          0 |
| varchardemo2                                                     |          0 |
| varcharurl                                                       |          0 |
| variableastablename                                              |          2 |
| variablenametable                                                |          0 |
| whereconditon                                                    |          4 |
| wordcountdemo                                                    |          0 |
| xmldemo                                                          |          0 |
+------------------------------------------------------------------+------------+
209 rows in set (0.08 sec)

결과를 보면 총 209개의 테이블이 조회되었으며, 각 테이블마다 저장된 레코드 수를 한눈에 파악할 수 있습니다.

참고 사항

  • TABLE_ROWS 값은 InnoDB 스토리지 엔진을 사용하는 테이블의 경우 근사치(approximate)로 반환됩니다. 정확한 레코드 수가 필요하다면 해당 테이블에 대해 SELECT COUNT(*) FROM 테이블명; 쿼리를 직접 실행해야 합니다.
  • MyISAM 엔진 테이블은 TABLE_ROWS 값이 정확하게 유지됩니다.
  • 테이블 이름 순으로 정렬된 결과를 원한다면 쿼리 끝에 ORDER BY table_name;을 추가하면 됩니다.