database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29869 게시물 읽기
No. 29869
SQL 질문입니다.
작성자
이여진
작성일
2010-12-15 16:08ⓒ
2010-12-15 16:09ⓜ
조회수
8,022

다음과 같은 종업원 데이터베이스가 있다고 할 때 다음의 질의를 나타내는 SQL 표현식은 어떻게 될까요?

  employee (employee_name, street, city)
  works (employee_name, company_name, salary)
  company (company_name, city)
  manages (company_name, manager_name)

< 문제  >
 ① ‘한국은행’에서 일하고, 3천만원 보다 더 많은 연봉을 받는 모든 종업원들의 이름, 거리, 도시를 찾아라.
 ②  ‘삼성’에서 근무하는 관리자의 연봉이 5천만원 보다 큰 경우는 3%를 인상하고, 크지 않은 경우는 5%를 인상하라.

제가 한 답안은

1. SELECT employ_name, street, city FROM employee as e, works as w WHERE e.employ_name=w.employ_name and(w.company_name='한국은행' or w.salary> 30000000);
2.  잘 모르겠음

1번은 제대로 했는지...?

2번 좀 풀어주실분 없으신지요....초보라 너무 어렵습니다.

이 글에 대한 댓글이 총 1건 있습니다.

 1번의 경우 한국은행에서 일하고 3천만원보다 많은 연봉이면

or가 아니고 and인것 같은데요

그러니까 w.company_name = '한국은행' and w.salary > 30000000;

2번의 경우는

select employee_name, company_name, salary, (case when salary > 50000000 then salary+salary*0.3 else salary+salary*0.5 end) salary2 from works where company_name = '삼성' ;

로 하면 될것 같습니다.

 

사발타(sabalta)님이 2010-12-29 17:53에 작성한 댓글입니다.
이 댓글은 2011-02-26 21:44에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
29873Mysql 업데이트로 인한 DB서버 변경시 주의사항..?? [1]
BigBug
2010-12-22
8437
29871Windows에서 Mysql ODBC등록후 연결시 에러입니다.
이기자
2010-12-18
8431
29870급합니다.. 도와주세요..!!mssql의 compute by 처럼 결과를 출력할 수 있는 방법없을까요?
BigBug
2010-12-16
8143
29869SQL 질문입니다. [1]
이여진
2010-12-15
8022
29868쿼리 질문입니다. [2]
한상우
2010-12-13
8368
29867MySQL 1135 에러.. [3]
도와주세요
2010-12-12
9196
29866MySQL 5.1 조합형 한글 Insert
동이
2010-12-10
8394
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다