본문 바로가기

Programming/MySQL6

[MySQL] 최신 리스트 만들기. 매달 칵테일 파티를 열고 있습니다. 그리고 매달 최고의 금발 소녀를 탑 10을 뽑습니다. 선발 기준은 금발에 바스트사이즈가 3이상 ^^;;;; 그런데 매달 이 아가씨들을 뽑고 리스트를 갱신 하려니.. 귀찮습니다. 그래서 이걸 쿼리 한방으로 해결 할려고 합니다. 어떻게 할까요? DROP TABLE IF EXISTS best_10_blond_girls; CREATE View best_10_blond_girls as SELECT concat(`name`,' has breast size = ', breast _size) as girls, hotness from girls WHERE hair_color like blond and breast _size > 3 ORDER BY hotness desc LIMIT 10 2009. 10. 22.
[MySQL] 사고다발자 제거하기. 이 놈의 클럽에서 자꾸 사고가 일어 나고 있습니다. 사장님은 극단의 결정을 내립니다. 클럽에서 사고를 3이번 이상 낸 고객을 고객 명단에서 삭제 할려고 합니다. 어떻게 해야 할 까요? Table Club_members -id -name -address Table Club_accidents -club_id -accident_desc 여기에서도 역시 WHERE IN을 사용하면 됩니다. DELETE from Club_members where id in (select club_id from club_accidents group by club_id having count(*) >= 3) 2009. 10. 22.
[MySQL] 연관되어 있지 않은 테이블 제거하기. 아래와 같은 테이블 GIRLS이 데이터가 있고 주소가 있는데.. 주소가 입력되어 있지 않은 걸들의 주소를 삭제 하고 싶다면, TABLE GIRLS -id INT -name VARCHAR -address_id INT [ foreign key ] -hair_color VARCHAR TABLE GIRL_ADDRESS -address_id INT -address_info VARCHAR -phone VARCHAR 아래와 같이 작성해 주시면 됩니다. DELETE from girls WHERE address_id not in (SELECT address_id from address) 2009. 10. 22.
[MySQL] 중복 레코드 지우기.. 기본적으로 중복되지 말아야 하는데.. 중복이 된 경우 그 행을 삭제하는 방법입니다. DELETE FROM duplicate WHERE id not in ( SELECT id from ( SELECT id from duplicate group by phone) as id ) 전화번호가 중복 된 것이 있을 경우, 위와 같이 WHERE NOT IN을 사용해서 제거해 줄 수 있습니다. 2009. 10. 22.
파일 1개 만으로 웹에서 mysql을 관리하자. php에 mysql을 사용하시는 분들은 phpMyAdmin을 많이 사용하 실 겁니다. 하지만, 이것보다 별 설치도 필요 없고 바로 사용 할 수 있는 mysql 관리자를 소개 해 드립니다. 바로 adminer입니다. 주소 : http://www.adminer.org/en/ 정말 설치도 필요 없고, 웹 실행하는 디렉토리에 파일 하나 복사해 넣고 웹페이지에서 부르고, 서버와 사용자이름, 암호만 입력하면, mysql을 관리 할 수 있습니다. 참 쉽조잉~ 일하다가, phpMyAdmin도 설치 되어 있지 않고 위급한 사황에서 요긴하게 사용 할 수 있을 듯 싶습니다. 기능 데이타베이스 서버와 이름, 암호로 데이타베이스 연결. 데이타베이스 선택과 데이타베이스 생성. 필드, 익덱스, 외부키, 테이블 트리거 목록 표시. .. 2009. 8. 17.
MySQL에서 BOOLEAN형.. MySQL에서는 boolean형은 BOOL혹은 BOOLEAN으로 정의 하면 됩니다. 실제로 boolean형이라고 하면 1비트면 충분하지만 MySQL에서는 BOOLEAN형으로 하면, TINYINT(1)과 같이 1바이트를 잡아 먹습니다. 그리고 데이터 형도 TRUE와 FLASE는 1과 0에 매칭이 됩니다. 그래서 쿼리를 해 보면 아래와 같은 결과가 나옵니다. mysql> SELECT IF(0 = FALSE, 'true', 'false'); +--------------------------------+ | IF(0 = FALSE, 'true', 'false') | +--------------------------------+ | true | +--------------------------------+ mys.. 2009. 6. 29.