[Mysql] 문자열 찾기, 원하는 순서 정렬 - FIND_IN_SET
FIND_IN_SET 함숙는 (찾는 문자열, '찾을문자열,찾을문자열,찾을문자열') 형태로 사용한다. 찾을 문자열들은 , 로 구분을 해줘야 해당 위치를 찾아준다. 1. SELECT 안에서 사용하는 경우 SELECT FIND_IN_SET('G20', 'G10,G20,G30'); 위와 같이 사용하고 결과값은 반드시 , 로 찾을 문자열들을 나누어줘야한다. 찾았을경우 위치 값을 반환해준다. , 로 나누지 않았을경우 SELECT FIND_IN_SET('G20', 'G10G20G30'); 찾을 수가 없어 0을 반환하게 된다. 2. ORDER BY 뒤에 사용하는 경우 FIELD 함수와 비슷하게도 사용할 수는 있다. SELECT cd FROM table ORDER BY FIND_IN_SET(cd, 'g10'), FIND..
2021. 2. 8.
[Mysql] 문자열 찾기, 원하는 순서로 정렬 - FIELD 함수
Field 함수는 FIELD(찾는 문자열, 문자열1, 문자열2, ...) 형태로 사용된다. 1. SELECT 구문에 사용하기 값을 찾은 경우 순서에 맞춰 값을 반환해준다. SELECT FIELD(fieldname, 'G15', 'G30'), fieldname FROM table; 위와 같이 사용할 경우 fieldname 에 G15, G30 이 있을 경우 순서대로 1, 2를 찍어준다. 찾는 값이 없는 경우는 0으로 표시된다. 2. ORDER BY 뒤에 사용하기 FIELD 함수를 ORDER BY 뒤에 사용하면 원하는 값을 우선적으로 정렬할 수 있다. SELECT fieldname FROM table ORDER BY FIELD(fieldname, 'G15', 'G30'), fieldname; 사용하는 방법은 ..
2021. 2. 5.
[Mysql] Insert 대량으로 하는 방법. (mybatis 에서도)
사이트를 만들면서 Insert 를 대량으로 한번에 처리하는 경우가 종종 발생한다. 이럴 때 단순히 Insert 를 여러번 시도하면 Web 서버와 DB 서버간에 Connection 이 여러번 발생하여 둘중 한 서버가 죽는 일이 종종 발생한다. 이럴때 한번에 대량으로 Insert 하는 방법이 있다. 물론 동일한 테이블에 한해서.... INSERT INTO dbtable( columna, columnb, columnc, columnd )VALUES ('valuea1', 'valueb1', 'valuec1', 'valued1'), ('valuea2', 'valueb2', 'valuec2', 'valued2'), ('valuea3', 'valueb3', 'valuec3', 'valued3'), ('valuea4'..
2020. 11. 11.