음식점 관리 시스템에서 고객(customer), 주문(order), 음식(food)을 관리하기 위해 릴레이션을 다음과 같이 설계하였다. 이 릴레이션에 대하여, SQL문에 대응하는 관계대수식으로 옳지 않은 것은? (단, 밑줄 친 속성은 기본 키이고, 관계대수 연산자 중에서 는 재명명(rename) 연산자이며, 은 집계함수(aggregate function) 연산을 정의하는 연산자이다)
customer(name, gender, phone, address, year)order(cname, fname, price, date)food(name, price, stock)
- ①
SQL: SELECT name FROM food AS f WHERE f.stock < 10 OR f.price > 20000; 관계대수: - ②
SQL: SELECT c.name, c.phone FROM customer AS c, order AS o, food AS f WHERE o.fname = f.name AND c.name = o.cname AND f.price > 10000; 관계대수: - ③
SQL: SELECT name, SUM(price) AS orderPrice FROM customer, order WHERE name = cname GROUP BY name; 관계대수:
- ④
SQL: SELECT name, AVG(food.price) AS avgPrice FROM food, order GROUP BY name; 관계대수:
선지를 골라 바로 채점해 보세요.
정답 ②
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)