반응형

Mysql select 조회시 특정값 제외, 포함 검색 및 LIKE NOT 활용


데이터를 조회하는 select 쿼리 조건절 부분을 간단히 정리합니다.

데이터베이스에 존재하는 데이터 중에서 원하는 부분을 조회 하기 위해서는 

조건절을 잘 사용해야 하는데 이때 사용되는 여러 키워드를 정리해 봅니다.


Mysql 에서는 조건절 처음은 where 구문으로 시작되고 그 이후에는 and, or 등으로 조건을 추가 합니다. 

그 외에 기호등도 사용이 되는데 "||, %, =" 등이 있습니다. 

아래의 예문중 대문자는 구문을 표시하여 예시 하였습니다. 

대문자가 아닌 부분은 변경되는 부분입니다.

NOT 구분은 제외 검색시 사용됩니다.


-) 조건과 일치하는 값을 조회하는 방법

SELECT * FROM table_name WHERE column_name = "value";

// table_name 테이블에 컬럼명 column_name 데이터 중에 값이 value와 동일한 데이터 조회

-) 조건과 일부가 포함한 값을 조회 하는 방법

SELECT * FROM table_name WHERE column_name LIKE "%value%";

// table_name 테이블에 컬럼명 column_name 데이터 중에 값이 value를 포함한 데이터 조회

-) 데이터 값중 조건값 앞문자에 상관없이 조건을 포함한 값을 조회하는 방법

SELECT * FROM table_name WHERE column_name LIKE "%value";

// column_name 데이터 중에 앞문자 상관없이 value를 포함한 데이터 조회

-) 데이터 값중 조회값 뒷문자에 상관없이 조건을 포함한 값을 조회하는 방법

SELECT * FROM table_name WHERE column_name LIKE "value%";

// 데이터 중에 뒷문자 상관없이 value를 포함한 데이터 조회

-) 여러 검색어를 하나의 컬럼에서 비슷한 값을 조회 하는 방법

SELECT * FROM table_name WHERE column_name LIKE "%value%check%";

// 데이터 값중에 value와 check 값이 포함되어 있는 데이터만 조회

-) 여러 검색어를 하나의 컬럼에서 일치하는 값들을 조회 하는 방법

SELECT * FROM table_name WHERE column_name IN ("value","check");

// 데이터 중에 value 값과 일치 거나 check 값이 일치한 데이터만 조회

-) 나머지 여러 조건을 추가 할 경우에는 AND, OR 구문을 사용해서 조회 합니다. 

   설명 까지 할 부분이 아닌 것 같아 예시는 생략합니다. 

-) 검색중 제회할 데이터가 있을 경우 NOT 구문을 이용하여 조회 합니다. 

SELECT * FROM table_name WHERE column_name NOT IN ("value","check");

// 데이터 중에 value 값과 일치 거나 check 값이 일치한 데이터를 제외한 나머지를 조회

-) NOT 구문은 반대 값을 구하라는 뜻이기 때문에 단일 조건 구문 앞에서도 사용됩니다. 

SELECT * FROM table_name WHERE column_name NOT LIKE "%value%";

// value 값이 포함된 값을 제외한 나머지 값을 조회 

-) 데이터 값들이 숫자이거나 날짜일 경우에는 부등호를 사용하여 조회합니다.

SELECT * FROM table_name WHERE value < 100 AND value > 10;

// 숫자, 날짜 데이터의 경우 부등호의 사용이 가능



반응형
반응형

리눅스 서비스 등록 및 재부팅 시작 서비스 등록

리눅스 재부팅시 자동으로 시작하기 위한 작업 공유 합니다.

예시로 MySQL을 서비스에 등록하고 등록한 서비스를 재부팅 및 콘솔 실행 권한을 주는 과정입니다. 

캡처 화면도 첨부 합니다. 


-------------------------------------------------------------------------------------------------------------

[root@Master /]# chkconfig --list | grep mysqld

[root@Master /]# chkconfig --add mysqld

[root@Master /]# chkconfig --list | grep mysqld

mysqld 0: 해제 1: 해제 2: 해제 3: 해제 4: 해제 5: 해제 6: 해제 

[root@Master /]# chkconfig --level 35 mysqld on

[root@Master /]# chkconfig --list | grep mysqld

mysqld 0: 해제 1: 해제 2: 해제 3: 활성 4: 해제 5: 활성 6: 해제 

-----------------------------------------------------------------------------------------------------------


반응형
반응형

토드 Mysql 다운로드 (Toad Mysql download) - 이제는  MariaDB에서 받자


MySQL을 편히 사용하기 위해서 관리도구를 사용하는데

최근 Toad 사이트에서 찾을수 있던 프리웨어 버전인 Toad for MySQL 를 찾을 수가 없을 것입니다. 

다양한 이유로 프로그램을 재설치 하려고 할때 다운로드 페이지가 사라져 있으면 참으로 난감합니다. 

저 역시 최근에 PC 세팅을 다시 하게 되어서 프로그램을 재설치 하는데 많이 당황되었습니다. 

검색을 해도 토드 사이트에서 링크가 사라진 프로그램을 찾기는 어렵더군요.

급한데로 다른 프로그램을 설치해 사용하였지만 프로그램을 바꾸어 사용한다는건 당장이지만 손에 맞지 않는 무기를  들고 휘두르는 느낌은 정말 스트레스가 올라 오기도 합니다. 

그러다가 개인적으로 MariaDB 서버를 운영 중인 것이 있어서  찾아 보니 사이트에 올라 와 있더군요. 저만의 느낌이지만 약간 의식적으로 살짝 안쪽에 올려 있는거 같지만 아무든 올라와 있었습니다 .


다운로드 페이지 URL는 다음과 같습니다. 

https://mariadb.com/kb/en/library/toad-for-mysql-80/


Features

    • Version control integration.
    • Macro record and playback.
    • Database browser.
    • Code snippet editor.
    • Security manager.
    • SQL editor.
    • Fast, multi-tabbed schema browser.
    • DB extract, compare-and-search utility.
    • Import/export utility.

Download Freeware

http://community-downloads.quest.com/toadsoft/MySQL/ToadforMySQL_Freeware_8.0.0.296.zip 


이미지로 보시면 Toad edge 링크도 보이네요. 

다운로드 페이지로 이동해서 다운로드 받으셔도 됩니다. 

요즘은 참 방심을 할 수 없는 시대라서 저는 다운로드 받은 프로그램을 잘 모셔 둬야 겠습니다. 




반응형
반응형

MySQL JOIN 걸어서 UPDATE 하는 방법


테이블 2개에 JOIN을 걸어서 UPDATE를 해야 할 경우가 생깁니다. 

JOIN문을 아래 형식처럼 select 구문과 비교 작성해 보았습니다. 


[select]

select [X.컬럼A]

from [테이블1] X

inner join [테이블2] Y on X.[조인된컬럼] = Y.[조인된컬럼]

where 절 


[update]

update [테이블명1] X 

inner join [테이블명2] Y on X.[조인된컬럼] = Y.[조인된컬럼]

set X.[컬럼A] = 변경할값

( WHERE 절 )


조건이 필요한 경우는 WHERE 절을 작성하면 됩니다. 



EX) 예시 입니다. 

1. [국가별 코드]와 사용되는 [인사말]를 가지고 있는 [테이블X] 가 있습니다.

2. [국가별 코드]와 사용되는 [언어 코드]를 가지고 있는 [테이블Y] 가 있습니다. 

3, 국가는 다르지만 사용되는 언어는 같을수 있습니다. 

4. 같은 언어로 된 메세지를 조인 조회해서 수정해야 할 경우를 예로 들어 보겠습니다.

5. 언어코드는 영어코드 'EN'을 사용 하는 메제지를 수정합니다.  



[select]

select [X.인사말]

from [테이블X] X

inner join [테이블Y] Y on X.[국가코드] = Y.[국가코드]

where Y.[언어코드] = 'EN'



[update]

update [테이블X] X

inner join [테이블Y] Y on X.[국가코드] = Y.[국가코드]

set [X.인사말] = '변경할 인사말'

where Y.[언어코드] = 'EN'


반응형

+ Recent posts