Question

CREATE TABLE person ( pid INTEGER NOT NULL ,pname VARCHAR(30) NOT NULL ,PRIMARY KEY (pid) );...

CREATE TABLE person

(

pid INTEGER NOT NULL

,pname VARCHAR(30) NOT NULL

,PRIMARY KEY (pid)

);

CREATE TABLE organization

(

oid INTEGER NOT NULL

,oname VARCHAR(30) NOT NULL

,PRIMARY KEY (oid)

);

CREATE TABLE venue

(

vid INTEGER NOT NULL

,area CHAR(1) NOT NULL

,capacity INTEGER NOT NULL

,PRIMARY KEY (vid)

);

CREATE TABLE calendar

(

vid INTEGER NOT NULL

,date DATE NOT NULL

,price NUMERIC(6,2) NOT NULL

,PRIMARY KEY(vid,date)

,FOREIGN KEY(vid) REFERENCES venue(vid)

);

CREATE TABLE event

(

eid INTEGER NOT NULL

,type VARCHAR(15) NOT NULL

,PRIMARY KEY (eid)

);

CREATE TABLE schedule

(

vid INTEGER NOT NULL

,date DATE NOT NULL

,eid INTEGER NOT NULL

,note VARCHAR(30)

,PRIMARY KEY(vid,date)

,FOREIGN KEY(eid) REFERENCES event(eid)

,FOREIGN KEY(vid,date) REFERENCES calendar(vid,date)

);

CREATE TABLE participate

(

pid INTEGER NOT NULL

,eid INTEGER NOT NULL

,PRIMARY KEY (pid,eid)

,FOREIGN KEY(pid) REFERENCES person(pid)

,FOREIGN KEY(eid) REFERENCES event(eid)

);

CREATE TABLE host

(

oid INTEGER NOT NULL

,eid INTEGER NOT NULL

,PRIMARY KEY (oid,eid)

,FOREIGN KEY(oid) REFERENCES organization(oid)

,FOREIGN KEY(eid) REFERENCES event(eid)

);

Question: List the venue ids, areas, capacities of all the venues that the organization with oid 6 has ever used to host events. - using a correlated subquery. Order the output by vid and capacity. Using psql

0 0
Add a comment Improve this question Transcribed image text
Answer #1

using a correlated subquery.

In a correlated subquery, inner query is executed, for each value of outer query. Then the inner query values are used to qualify or disqualify the outer query value. This method is computationally expensive. Alternative is to use views or joins.

SQL QUERY

SELECT v.vid,v.area, v.capacity
FROM schedule s
JOIN venue v
ON s.vid=v.vid
WHERE EXISTS (
select h.eid
from host h
where h.oid=6 and h.eid=s.eid)
ORDER BY v.vid, v.capacity;

Add a comment
Know the answer?
Add Answer to:
CREATE TABLE person ( pid INTEGER NOT NULL ,pname VARCHAR(30) NOT NULL ,PRIMARY KEY (pid) );...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • CREATE TABLE Users (               userId varchar (30) NOT NULL,               pass varchar (30),     

    CREATE TABLE Users (               userId varchar (30) NOT NULL,               pass varchar (30),               fname varchar (50),               lname varchar (50),               email varchar (50),               gender char(1),               age integer,               banned boolean,               PRIMARY KEY (userId),               UNIQUE(email)) CREATE TABLE FavSellers (               userId varchar (30),               sellerId varchar (30),               PRIMARY KEY (userId, sellerId),               FOREIGN KEY(userId) references Users,               FOREIGN KEY(sellerId) references Users(userId)) CREATE TABLE Items (               itemId integer,               title varchar (50),              ...

  • CREATE TABLE Gender ( gender CHAR(1), description VARCHAR(10), PRIMARY KEY (gender) ); CREATE TABLE People (...

    CREATE TABLE Gender ( gender CHAR(1), description VARCHAR(10), PRIMARY KEY (gender) ); CREATE TABLE People ( ID INT, name VARCHAR(50), gender CHAR(1), height FLOAT, PRIMARY KEY (ID), FOREIGN KEY (gender) REFERENCES Gender (gender) ); CREATE TABLE Sports ( ID INT, name VARCHAR(50), record FLOAT, PRIMARY KEY (ID), UNIQUE (name) ); CREATE TABLE Competitions ( ID INT, place VARCHAR(50), held DATE, PRIMARY KEY (ID) ); CREATE TABLE Results ( peopleID INT NOT NULL, competitionID INT NOT NULL, sportID INT NOT NULL,...

  • CREATE TABLE DEPT ( DEPTNO INTEGER NOT NULL, DNAME VARCHAR(14), LOC VARCHAR(13), PRIMARY KEY (DEPTNO)); INSERT...

    CREATE TABLE DEPT ( DEPTNO INTEGER NOT NULL, DNAME VARCHAR(14), LOC VARCHAR(13), PRIMARY KEY (DEPTNO)); INSERT INTO DEPT VALUES (10,'SPORTS','NEW YORK'); INSERT INTO DEPT VALUES (20,'HOME','DALLAS'); INSERT INTO DEPT VALUES (30,'OUTDOOR','CHICAGO'); INSERT INTO DEPT VALUES (40,'CLOTHING','BOSTON'); CREATE TABLE EMP ( EMPNO INTEGER NOT NULL, ENAME VARCHAR(10), JOB VARCHAR(9), MGR INTEGER, SAL FLOAT, COMM FLOAT, DEPTNO INTEGER NOT NULL, FOREIGN KEY (DEPTNO) REFERENCES DEPT (DEPTNO), FOREIGN KEY (MGR) REFERENCES EMP(EMPNO), PRIMARY KEY (EMPNO)); INSERT INTO EMP VALUES (7839,'KING','PRESIDENT',NULL, 5000,NULL,10); INSERT INTO...

  • Consider the following schema: Suppliers (sid: integer, sname: varchar, address: varchar) Parts (pid: integer, pname: varchar,...

    Consider the following schema: Suppliers (sid: integer, sname: varchar, address: varchar) Parts (pid: integer, pname: varchar, color: varchar) Catalog (sid: integer, pid: integer, cost: real) that order) (1pt.)    Where sid is the supplier’s id (primary key in Suppliers), pid is the part’s id (primary key in Parts), and sid together with pid is the primary key of Catalog. The Catalog relation lists the prices charged for parts by Suppliers. Write the following queries using relational algebra: Find the names...

  • create table candidate ( cand_id   varchar(12) primary key,   -- cand_id name       varchar(40)           --...

    create table candidate ( cand_id   varchar(12) primary key,   -- cand_id name       varchar(40)           -- cand_nm ); create table contributor ( contbr_id   integer primary key, name       varchar(40),           -- contbr_nm city     varchar(40),           -- contbr_city state       varchar(40),           -- contbr_st zip       varchar(20),           -- contbr_zip employer   varchar(60),           -- contbr_employer occupation   varchar(40)           -- contbr_occupation ); create table contribution ( contb_id   integer primary key, cand_id   varchar(12),           --...

  • -- Schema definition create table Customer (     cid   smallint not null,     name varchar(20),    ...

    -- Schema definition create table Customer (     cid   smallint not null,     name varchar(20),     city varchar(15),     constraint customer_pk         primary key (cid) ); create table Club (     club varchar(15) not null,     desc varchar(50),     constraint club_pk         primary key (club) ); create table Member (     club varchar(15) not null,     cid   smallint     not null,     constraint member_pk         primary key (club, cid),     constraint mem_fk_club         foreign key (club) references Club,     constraint mem_fk_cust...

  • Consider the following database Relation Schemas: Relation Schemas: Suppliers(SID CHAR(5), Parts(pID VARCHAR(5), type VARCHAR(15), pName VARCHAR(35),...

    Consider the following database Relation Schemas: Relation Schemas: Suppliers(SID CHAR(5), Parts(pID VARCHAR(5), type VARCHAR(15), pName VARCHAR(35), sName VARCHAR(15), address VARCHAR(30, city VARCHAR(20), state CHAR(2), PRIMARY KEY(sID); PRIMARY KEY(pID) Catalog(sID CHAR(5), pID VARCHAR(5), ty SMALLINT, cost FLOAT (10,2), PRIMARY KEY(sid, pid), FOREIGN KEY(sid) REFERENCES Suppliers(SID), FOREIGN KEY (pid) REFERENCES Parts pID) The meaning of these relations is straightforward; for example, the Catalog relation lists the prices charged for parts by Suppliers. Instances of the relations Suppliers sName address SID cit state...

  • Use an INSERT INTO statement with a subquery containing a SQL string function to create user...

    Use an INSERT INTO statement with a subquery containing a SQL string function to create user names for the volunteers based on their legal names and insert them into the table. +----------------------+ | Tables_in_volunteers | +----------------------+ | address              | | email                | | funds                | | hours                | | person               | | phone                | | users                | +----------------------+ users legal names are in the address table user table is : CREATE TABLE USERS(volunteer_id INT NOT NULL, username VARCHAR(50), PRIMARY KEY...

  • CREATE TABLE actor( id INTEGER NOT NULL, name VARCHAR(100), PRIMARY KEY (id) ); SELECT name FROM...

    CREATE TABLE actor( id INTEGER NOT NULL, name VARCHAR(100), PRIMARY KEY (id) ); SELECT name FROM actor WHERE name LIKE 'M%'; Q. How to run explain plan on the above query and display its output?

  • Consider the following table definitions: create table node (node_id integer primary key, node_color varchar(10)); create table...

    Consider the following table definitions: create table node (node_id integer primary key, node_color varchar(10)); create table edge (edge_id integer primary key, origin_id integer, destination_id integer, foreign key (origin_id) references node (node_id), foreign key (destination_id) references node (node_id) ); Which of the following list the ids of nodes that link to both the node with id 3 and and the node with id 4? select node id from node inner join edge on node_id=origin_id where destination_id=3 and destination_id=4; select node_id from...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT