>  기사  >  데이터 베이스  >  mysql 데이터베이스를 쿼리하는 방법

mysql 데이터베이스를 쿼리하는 방법

青灯夜游
青灯夜游원래의
2022-01-06 15:28:049502검색

mysql에서는 "SHOW DATABASES;" 문을 사용하여 현재 사용자가 볼 수 있는 모든 데이터베이스를 나열하거나 "SHOW DATABASES LIKE 'string';" 문을 사용하여 지정된 문자열을 포함하는 데이터베이스를 나열할 수 있습니다.

mysql 데이터베이스를 쿼리하는 방법

이 튜토리얼의 운영 환경: windows7 시스템, mysql8 버전, Dell G3 컴퓨터.

MySQL에서는 SHOW DATABASES 문을 사용하여 현재 사용자의 권한 범위 내에서 데이터베이스를 보거나 표시할 수 있습니다.

  • 모든 데이터베이스 보기를 원할 경우 다음과 같이 직접 말할 수 있습니다.

SHOW DATABASES;

이렇게 하면 현재 사용자가 볼 수 있는 모든 데이터베이스가 나열됩니다. 예:

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sakila             |
| sys                |
| world              |
+--------------------+
6 row in set (0.22 sec)

다음이 있음을 확인할 수 있습니다. 위 목록의 6개 데이터베이스는 MySQL이 설치될 때 시스템에 의해 자동으로 생성됩니다.

  • LIKE 절과 함께 SHOW DATABASES 문을 사용하면 지정된 문자열이 포함된 데이터베이스를 나열할 수 있습니다.

SHOW DATABASES [LIKE '字符串'];
  • LIKE 절은 선택 사항이며 지정된 데이터베이스 이름을 일치시키는 데 사용됩니다. LIKE 절은 부분적으로 또는 완전히 일치할 수 있습니다.

    String: 일치시킬 문자열을 지정합니다. "문자열"은 완전한 문자열이거나 와일드카드 문자를 포함할 수 있습니다.

    • 퍼센트 기호 "%”和下划线“_" 와일드카드를 지원합니다.

"%"는 MySQL에서 가장 일반적으로 사용되는 와일드카드 문자입니다. 이는 임의의 길이의 문자열을 나타낼 수 있으며 문자열의 길이는 0일 수 있습니다. 예를 들어, a%b는 문자 a로 시작하고 문자 b로 끝나는 모든 길이의 문자열을 나타냅니다. 이 문자열은 ab, acb, accb, accrb 등과 같은 문자열을 나타낼 수 있습니다.

"_"는 단일 문자만 나타낼 수 있으며, 문자의 길이는 0이 될 수 없습니다. 예를 들어 a_b는 acb, adb, aub 등과 같은 문자열을 나타낼 수 있습니다.

1) LIKE 절을 사용하여 test_db와 정확히 일치하는 데이터베이스 보기:

mysql> SHOW DATABASES LIKE 'test_db';
+--------------------+
| Database (test_db) |
+--------------------+
| test_db            |
+--------------------+
1 row in set (0.03 sec)

2) LIKE 절을 사용하여 이름에 test가 포함된 데이터베이스 보기:

mysql> SHOW DATABASES LIKE '%test%';
+--------------------+
| Database (%test%)  |
+--------------------+
| db_test            |
+--------------------+
| db_test_db         |
+--------------------+
| test_db            |
+--------------------+
3 row in set (0.03 sec)

3) LIKE 절을 사용하여 test_db가 포함된 데이터베이스 보기 이름은 db로 시작합니다 :

mysql> SHOW DATABASES LIKE 'db%';
+----------------+
| Database (db%) |
+----------------+
| db_test        |
+----------------+
| db_test_db     |
+----------------+
2 row in set (0.03 sec)

4) 이름이 db로 끝나는 데이터베이스를 보려면 LIKE 절을 사용하세요.

mysql> SHOW DATABASES LIKE '%db';
+----------------+
| Database (%db) |
+----------------+
| db_test_db     |
+----------------+
| test_db        |
+----------------+
2 row in set (0.03 sec)

와일드카드 사용에 대한 참고 사항 및 기술

다음은 와일드카드 사용에 대한 몇 가지 참고 사항입니다.

  • 대소문자에 주의하세요. MySQL은 기본적으로 대소문자를 구분하지 않습니다. 대소문자를 구분하는 경우 "Tom"과 같은 데이터는 "t%"와 일치할 수 없습니다.

  • 와일드카드 일치를 방해하는 후행 공백에 주의하세요. 예를 들어 "T%"는 "Tom"과 일치하지 않습니다.

  • NULL을 참고하세요. "%" 와일드카드는 모든 문자와 일치할 수 있지만 NULL과 일치할 수는 없습니다. 즉, "%"는 tb_students_info 데이터 테이블에서 NULL 값을 갖는 레코드와 일치할 수 없다.

다음은 와일드카드를 사용할 때 기억해야 할 몇 가지 팁입니다.

  • 와일드카드를 과도하게 사용하지 마세요. 다른 연산자가 동일한 목적을 달성할 수 있다면 다른 연산자를 사용해야 합니다. 왜냐하면 MySQL은 일반적으로 다른 연산자보다 와일드카드를 처리하는 데 시간이 더 오래 걸리기 때문입니다.

  • 와일드카드를 사용하기로 결정한 후에는 꼭 필요한 경우가 아니면 문자열 시작 부분에 와일드카드를 사용하지 마세요. 검색 패턴의 시작 부분에 와일드카드를 배치하면 검색 속도가 가장 느려집니다.

  • 와일드카드 배치에 주의하세요. 잘못 배치된 경우 원하는 데이터가 반환되지 않을 수 있습니다.

【관련 추천: mysql 비디오 튜토리얼

위 내용은 mysql 데이터베이스를 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.