파일의 값 사이에 쉼표나 다른 문자를 삽입하려는 경우 이스케이프 문자(\)를 사용하는 것이 매우 중요합니다. 예제를 통해 이해할 수 있습니다. 다음 데이터를 포함하는 A.txt라는 텍스트 파일에서 MySQL 테이블로 데이터를 가져오기를 원한다고 가정해 보겠습니다. - id, 이름, 국가, Salary105, Chum, Marsh, USA, 11000106, Danny, Harrison, AUS, 12000 여기에서 파일 이름에 쉼표로 구분된 이름과 성의 두 값이 있음을 알 수 있습니다. 이제 다음 쿼리는 위의 텍스트 파일 A.tx
백슬래시(\)는 기본적으로 MySQL의 이스케이프 문자이며 텍스트 파일에서 사용할 때 텍스트 파일에서 테이블로 데이터를 가져오는 동안 쿼리에서 이를 언급할 필요가 없습니다. 그러나 다른 문자를 이스케이프 문자로 사용하는 경우 텍스트 파일을 테이블로 가져오는 동안 쿼리에서 ESCAPED BY 옵션을 사용하여 해당 문자를 언급해야 합니다. 다음 예의 도움으로 이해할 수 있습니다 - 다음과 같이 텍스트 파일의 이스케이프 문자로 별 기호(*)를 사용한다고 가정합니다. - id,Name,Country,Salary 105,Chum*,Mars
MySQL WHERE 절과 함께 INSTR() 함수를 사용할 때 비교 연산자와 함께 테이블의 열 이름을 첫 번째 인수로, 하위 문자열을 두 번째 인수로 제공해야 합니다. 다음은 이를 보여주기 위해 학생 테이블을 사용하는 예입니다 - 예시 Student 테이블에 다음 값이 있다고 가정합니다. - mysql> Select * from Student; +------+---------+---------+-----------+ | Id | Name | Address | Subject |
MySQL INSTR() 및 POSITION() 함수는 LOCATE() 함수와 유사하게 작동합니다. 둘 다 LOCATE() 함수의 동의어입니다. INSTR() 함수는 문자열에서 검색한 후 하위 문자열이 처음 나타나는 위치도 반환합니다. INSTR()의 구문은 다음과 같습니다 - INSTR()의 구문 INSTR(string, substring) 여기서 String은 MySQL이 검색할 문자열이고 substring은 검색할 문자열입니다. 예시 mysql> Select INSTR('Ram is a good boy'
알다시피, 두 함수 모두 제공된 인수에서 문자열을 검색하는 데 사용되지만 다음과 같이 두 함수 사이에 몇 가지 중요한 차이점이 있습니다. FIND_IN_SET() 함수는 쉼표로 구분된 하위 문자열을 포함하는 문자열 자체인 문자열 목록을 사용합니다. 반면, LOCATE() 함수는 하위 문자열이 있는 경우 처음 나타나는 위치를 찾는 문자열을 포함합니다. LOCATE() 함수에서 위치에 대한 선택적 인수를 제공하여 검색 시작점을 관리할 수 있습니다. 반면, FIND_IN_SET() 함수의 경우 MySQL은 이러한 종류의 유연성을 제공
기본적으로 LOCATE() 함수에서 검색은 처음부터 시작된다는 것을 알고 있습니다. 문자열에서 검색을 시작하려는 위치를 지정하는 인수를 제공하여 시작 위치를 관리할 수 있습니다. 다음 예는 그것을 보여줄 것입니다 - 예시 mysql> Select LOCATE('good','Ram is a good boy. Is Ram a good boy?',11)As Result; +--------+ | Result | +--------+ | 29 | +--------+ 1 row in
첫 번째 인수(예:부분 문자열) 또는 두 번째 인수(예:하위 문자열)의 값이 NULL인 경우 출력으로 NULL을 반환합니다. 아래의 예가 그것을 보여줍니다 - 예시 mysql> Select LOCATE(NULL,'Ram is a good boy')As Result; +--------+ | Result | +--------+ | NULL | +--------+ 1 row in set (0.00 sec) mysql> Select LOCATE('Ram',NULL)As Result;
MySQL CONV() 함수의 도움으로 한 숫자 체계의 값을 다른 숫자 체계로 변환할 수 있습니다. 구문 CONV(N, from_base, to_base) 여기서 N은 변환할 숫자이고, from_base는 해당 숫자의 현재 기수이며, to_base는 해당 숫자가 변환되어야 하는 기수입니다. N은 정수로 해석되지만 정수 또는 문자열로 지정할 수 있습니다. 예시 mysql> Select CONV('10',10,2) AS 'DECIMAL TO BINARY'; +-------------------+ |
MySQL은 CONV() 함수의 인수 중 하나라도 NULL이거나 기본에 제공된 값이 제한을 벗어나면(즉, 최소 2와 최대 36 사이가 아닌 경우) 출력으로 NULL을 반환합니다. 다음 예를 보면 알 수 있습니다. 예시 mysql> Select CONV(10,NULL,2); +-----------------+ | CONV(10, NULL,2)| +-----------------+ | NULL | +-----------------+ 1 row in set (0.00 sec) mysql> Select C
MySQL과 데이터 파일 간에 정보를 전송한다는 것은 데이터 파일에서 데이터베이스로 데이터를 가져오거나 데이터베이스에서 파일로 데이터를 내보내는 것을 의미합니다. MySQL에는 MySQL과 데이터 파일 간에 데이터를 가져오거나 내보내는 데 사용할 수 있는 두 가지 명령문이 있습니다. 데이터 파일 로드 이 문은 데이터 파일에서 데이터베이스로 데이터를 가져오는 데 사용됩니다. 파일에서 직접 데이터 레코드를 읽고 테이블에 삽입합니다. 구문은 다음과 같습니다 - 구문 LOAD DATA LOCAL INFILE '[path/][fi
LOAD DATA INFILE 문을 사용하여 수행할 수 있습니다. 개념을 설명하기 위해 경로가 d:/A.txt −인 A.txt에 탭으로 구분된 다음 데이터가 있습니다. 100 John USA 10000 101 Paul UK 12000 102 Henry NZ 11000 103 Rick USA 17000 104 Corey USA 15000 A.txt의 데이터를 employee_tbl −라는 이름의 다음 테이블에 로드하려고 합니다. mysql> Create table emplo
MySQL은 CONV() 함수에 주어진 숫자가 기본과 일치하지 않으면 출력으로 0을 반환합니다. 10진수 9를 이진수 시스템의 숫자로 변환하고 싶다면 이 경우 from_base의 값은 10이어야 하지만 from_base의 값으로 8을 제공하면 MySQL은 출력으로 0을 반환합니다. 예 선택 CONV(9,8,2);+------------+| 변환(9,8,2) |+-------------+| 0 |+-------------+1 행 세트(0.00초) 8진수 체계의 값은 0에서 7 사이여야 하므로 숫자 9의 숫자 체계는 10진수, 즉 1
기수는 2보다 크고 36보다 작아야 합니다. 즉, 기수의 하한은 2이고 상한은 36입니다. 이는 from_base 및 to_base 값 모두에 적용됩니다. 만약 우리가 베이스의 한계 값을 제공한다면 MySQL은 출력으로 NULL을 리턴한다. 다음 예는 그것을 보여줄 것입니다 - 예 Select CONV(10,10,1);+---------- -----+| 변환(10,10,1) |+---------------+| NULL |+---------------+1 행 세트(0.00초)
사실.CSV는 값이 쉼표로 구분된 텍스트 파일이기도 합니다. 즉 CSV(쉼표로 구분된 값)가 있는 텍스트 파일이라고 할 수 있습니다. .CSV 파일에서 MySQL 테이블로 데이터를 가져오는 동안 LOAD DATA INFILE 문과 함께 FIELDS SEPARATED OPTION을 사용해야 합니다. 이해를 돕기 위해 다음 예를 고려하고 있습니다. - 예시 다음은 A.CSV 파일에서 쉼표로 구분된 값입니다 - 105,Chum,USA,11000 106,Danny,AUS,12000 이 데이터를 employee1_tbl − 파일로 가져오
우리는 명령문에서 사용자 정의 변수의 값을 저장한 다음 나중에 다른 명령문에서 참조할 수 있습니다. 다음은 사용자 정의 변수에 값을 저장하는 방법입니다 - SET 문 포함 다음과 같이 SET 문을 실행하여 사용자 정의 변수를 저장할 수 있습니다. - 구문 SET @var_name =expr[, @var_name =expr]… 이 @var_name에서 현재 문자 집합의 영숫자로 구성된 변수 이름입니다. =또는을 사용할 수 있습니다. :=SET 문이 있는 할당 연산자. 예를 들어 다음 쿼리는 SET 문을 사용하여 사용자 변수를 저장
두 기능의 작동을 기반으로 두 기능이 서로 보완적이라고 말할 수 있습니다. 실제로 FIELD() 함수는 문자열을 인수로 제공할 때 문자열 목록에서 문자열의 인덱스 번호를 반환하고 ELT() 함수는 인덱스 번호를 인수로 제공하면 문자열 목록에서 문자열을 반환한다는 것을 알고 있습니다. 다음 예에서는 동일한 문자열에 두 함수를 모두 적용했으며 개념을 보여줍니다. - 예시 mysql> SELECT ELT(4, 'Ram','is','good','boy')As Result; +
이 함수의 첫 번째 인수로 정수 유형 열을 제공하여 테이블의 열과 함께 EXPORT_SET() 함수를 사용할 수 있습니다. 다음 예는 그것을 보여줄 것입니다 - 예시 mysql> SELECT Id, EXPORT_SET(id,'1','0',' ',5)AS 'ID in bits' from student; +------+------------+ | Id | ID in bits | +------+------------+ | 1 | 1 0 0
LOCATE() 함수의 도움으로 MySQL은 주어진 문자열에서 부분 문자열이 처음 나타나는 위치를 반환합니다. LOCATE() 함수의 인수로 두 문자열(즉, 검색할 하위 문자열과 하위 문자열을 검색할 문자열)을 모두 전달해야 합니다. 구문 LOCATE(Substring, String) 이 함수에서 Substring은 발생 위치를 찾아야 하는 문자열이고, string은 하위 문자열이 검색되어야 하는 문자열입니다. 예시 mysql> Select LOCATE('DE','ABCDEFGH'); +-----
MySQL에서는 LOCATE() 함수의 인수로 정수 값을 사용할 수 있습니다. 따옴표를 사용할 필요가 없습니다. 다음 예의 도움으로 시연할 수 있습니다. - 예시 mysql> Select LOCATE(5,1698235); +-------------------+ | LOCATE(5,1698235) | +-------------------+ | 7 | +-------------------+ 1 row in set (0.00 sec)
MySQL에서는 사용자 정의 변수가 연결에 따라 다르기 때문에 한 클라이언트에서 정의한 사용자 정의 변수를 다른 클라이언트에서 보거나 사용할 수 없습니다. 주어진 클라이언트 연결에 대한 모든 변수는 해당 클라이언트가 종료될 때 자동으로 해제됨을 의미합니다.