InnoDB는 높은 안정성과 성능이 균형을 이루는 범용 스토리지 엔진입니다. MySQL 5.6부터 InnoDB는 기본 MySQL 스토리지 엔진입니다. InnoDB는 다양한 용도로 사용될 수 있습니다. 다음은 그 중 일부입니다 - 트랜잭션 목적, 즉 모든 ACID 속성에 사용할 수 있습니다. InnoDB는 행 수준 잠금에 사용할 수 있습니다. 즉, MyISAM에 비해 더 높은 성능을 제공합니다. InnoDB는 대용량 버퍼 풀의 데이터와 인덱스 모두에 사용할 수 있습니다. InnoDB는 MyISAM보다 더 나은
다음 두 가지 방법으로 MySQL에서 아포스트로피()를 이스케이프할 수 있습니다. - 백슬래시를 사용할 수 있습니다. 작은따옴표를 두 번 사용할 수 있습니다(큰따옴표) 백슬래시 사용 먼저 테이블을 생성해 보겠습니다. ); Query OK, 0 rows affected (1.16 sec) 다음 직접 사용은 Johns라는 이름에 대해 원하는 결과를 제공하지 않습니다. 이제 백슬래시를 사용하겠습니다. insert into SingleQuotesDemo values(1,John\s); Query OK, 1 row affe
재귀 선택의 경우 예를 살펴보겠습니다. 먼저 테이블을 생성하겠습니다. CREATE 명령은 테이블을 생성하는 데 사용됩니다. ); Query OK, 0 rows affected (0.61 sec) 이제 tblSelectDemo 테이블에 레코드를 삽입합니다. insert into tblSelectDemo values(5,Bob); Query OK, 1 row affected (0.18 sec) 모든 기록을 표시합니다. SELECT *from tblSelectDemo; 다음은 출력입니다. +------+-------+
이제 두 타임스탬프 사이의 시간 차이를 초 단위로 계산하는 다음 방법을 살펴보겠습니다. 방법 다음은 두 타임스탬프의 차이를 계산하는 쿼리입니다. SELECT TIMESTAMPDIFF(SECOND, 2018-10-17 11:51:55, 2018-10-17 11:51:58); 다음은 초 단위의 출력입니다. +---------------------------------------------------------------------+ | TIMESTAMPDIFF(SECOND, 2018-10-17 11:51:55, 2018-10
매개변수 ,가 있는 concat() 함수를 사용하여 결과를 쉼표로 구분된 목록으로 표시할 수 있습니다. 이제 예를 살펴보겠습니다. 먼저 테이블을 생성하겠습니다. CREATE 명령은 테이블을 생성하는 데 사용됩니다. ); Query OK, 0 rows affected (0.93 sec) 기록 삽입 insert into CommaSeperateDemo values(3,Johnson,T.); Query OK, 1 row affected (0.16 sec) 이제 모든 기록을 표시해 보겠습니다. select *from Comma
루트 암호를 재설정하거나 변경하려면 먼저 관리자 모드에서 MySQL을 열어야 합니다. 거기에서 모든 사용자와 호스트를 볼 수 있습니다. 다음은 쿼리입니다 - SELECT user,host from user; 다음은 출력입니다. +------------------+-----------+ | user | host | +------------------+-----------+ | John | % | | Mac | % | | Ma
SHOW processlist 명령을 사용하여 MySQL 계정과 관련된 실행 중인 스레드만 표시할 수 있습니다. 프로세스 권한이 있으면 실행 중인 거의 모든 스레드를 볼 수 있습니다. 실행 중인 스레드를 보여줍니다. 다음은 쿼리입니다. SHOW processlist; 다음은 출력입니다. +----+-----------------+-----------------+------+---------+------+------------------------+------------------+ | Id | User
일괄 삽입을 수행하려면 모든 열 이름을 ,로 구분하여 괄호로 묶어 사용해야 합니다. 예를 들어 보겠습니다. 먼저 테이블을 생성하겠습니다. 다음은 테이블을 생성하는 CREATE 명령어입니다. ); Query OK, 0 rows affected (0.88 sec) 다음은 일괄 삽입 구문입니다. INSERT into yourTableName values(column1,column2,....N),(column1,column2,....N),(column1,column2,....N),...........N; 위의 구문을 적용하여
복합 인덱스는 하위 쿼리를 사용할 때 사용할 수 있습니다. 복합 인덱스를 사용하는 경우의 장점은 다음과 같습니다. 가입 필터링 선택 다음은 인덱스 구문입니다. index(column_name1,column_name2,column_name3,column_name4,............................N) 먼저 테이블을 만들고 그 안에 인덱스를 설정해 보겠습니다. ); Query OK, 0 rows affected (0.57 sec) 인덱스가 성공적으로 생성되었는지 확인합니다. show index fro
MySQL에 테이블이 있는지 없는지 확인하는 방법에 대해 알아보겠습니다. SHOW 사용 SHOW 명령은 모든 테이블을 표시합니다. SHOW tables; 다음은 출력입니다. +--------------------------+ | Tables_in_business | +--------------------------+ | addcheckconstraintdemo | | addcolumntable | | addconstr
값이 발견되지 않은 경우 Sum을 0으로 반환하려면 IFNULL 또는 COALESCE 명령을 사용하십시오. 다음은 IFNULL의 구문입니다. SELECT IFNULL(SUM(NULL), 0) AS aliasName; 이제 다음 쿼리에서 위의 구문을 구현해 보겠습니다. SELECT IFNULL(SUM(NULL), 0) AS SUMOFTWO; 다음은 0을 반환하는 위 쿼리의 출력입니다. +----------+ | SUMOFTWO | +----------+ | 0 | +----------+ 1 row in se
열에 있는 각 고유 값의 개수를 가져오는 예를 살펴보겠습니다. 먼저 테이블을 생성하겠습니다. CREATE 명령은 테이블을 생성하는 데 사용됩니다. ); Query OK, 0 rows affected (0.43 sec) 기록 삽입 insert into DistinctDemo1 values(5,David); Query OK, 1 row affected (0.12 sec) 모든 레코드 표시 select *from DistinctDemo1; 다음은 모든 레코드를 표시하는 출력입니다. +------+-------+ | id
일반적으로 MySQL에서는 ON을 사용합니다. 조인에서는 열 집합에서 ON을 사용합니다. USING은 두 테이블이 조인하는 동일한 이름의 열을 공유할 때 유용합니다. 켜짐의 예. 첫 번째 테이블 만들기 mysql> CREATE table ForeignTableDemo -> ( -> Id int, -> Name varchar(100), - > FK int - > ); Query OK, 0 rows affected (0.47 sec) 두 번째 테이블 만들기 mysql
조건 없이 교차 조인을 사용할 수 있습니다. 교차 조인은 결과를 데카르트 곱 형식으로 제공합니다. 예를 들어, 한 테이블에 3개의 레코드가 있고 다른 테이블에 2개의 레코드가 있는 경우 첫 번째 레코드는 모든 두 번째 테이블 레코드와 일치합니다. 그런 다음 두 번째 기록에 대해서도 같은 과정을 반복합니다. 교차 조인의 예 첫 번째 테이블 만들기 mysql> CREATE table ForeignTableDemo - > ( - > Id int, - > Name varchar(100), -
If-Else 문에서 조건은 값에 따라 true 또는 false로 평가됩니다. 예를 들어 보겠습니다. 먼저 테이블을 생성하겠습니다. CREATE 명령은 테이블을 생성하는 데 사용됩니다. mysql> create table IfelseDemo - > ( - > id int, - > FirstName varchar(100) - > ); Query OK, 0 rows affected (0.46 sec) 레코드는 INSERT 명령을 사용하여 삽입됩니다. mysql> insert
10개의 문자열을 생성하기 위해 내장 함수 rand() 및 char()을 사용할 수 있습니다. 다음은 임의의 10자 문자열을 생성하는 쿼리입니다. )AS Random10CharacterString; 다음은 임의의 10자 문자열을 보여주는 출력입니다. +-------------------------+| Random10CharacterString |+-------------------------+| duscikyspy |+-------------------------+1 행 세트(0.00초) 다음은 대문자로 임의의 문자를 생성하는
데이터베이스 인덱스는 테이블의 작업 속도를 향상시키는 데이터 구조입니다. 인덱스는 하나 이상의 열을 사용하여 생성할 수 있으며, 빠른 임의 조회와 레코드 액세스의 효율적인 순서를 위한 기반을 제공합니다. MySQL 인덱스 사용에 대한 모범 사례는 다음과 같습니다. 테이블이 CSV로 매우 큰 경우 인덱스를 사용하면 끝에 레코드가 삽입됩니다. 인덱스는 테이블의 일련의 행을 생성합니다. 인덱스는 특정 선택 작업의 속도를 높입니다. INSERT 및 UPDATE 문은 인덱스가 있는 테이블에서 더 많은 시간이 걸리는 반
MySQL에서는 기본값에 대한 함수를 사용할 수 없지만 트리거는 사용할 수 있습니다. 예를 들어 보겠습니다. 먼저 테이블을 생성하겠습니다. CREATE 명령은 테이블을 생성하는 데 사용됩니다. ); Query OK, 0 rows affected (0.55 sec) 다음은 트리거를 생성하고 기본값을 포함하는 구문입니다. CREATE TRIGGER anyName BEFORE INSERT ON yourTableName FOR EACH ROW SET new.columnname = uuid(); 이제 트리거를 생성하는 쿼리를 구
다음은 PostgreSQL에서 MySQL의 ORDER BY FIELD()를 시뮬레이션하는 과정입니다. PostgreSQL을 실행하기 위해 온라인 컴파일러를 사용했습니다. 이제 출력을 얻기 위해 위에서 수행한 작업을 살펴보겠습니다. 먼저 테이블을 만들었습니다. create table PostgreOrderIdDemo ( countryName varchar(20) ); INSERT 명령을 사용하여 레코드를 삽입했습니다. insert into PostgreOrderIdDemo values('IND
사용자 이름과 비밀번호를 MySQL 데이터베이스에 안전하게 저장하기 위해 MD5()를 사용할 수 있습니다. 예를 들어 보겠습니다. 먼저 테이블을 생성하겠습니다. CREATE 명령은 테이블을 생성하는 데 사용됩니다. mysql> create table UserNameAndPasswordDemo - > ( - > U_Id int(10) unsigned NOT NULL AUTO_INCREMENT, - > UserId varchar(255) DEFAULT NULL, - > UserPassword varchar(