Section 7 Quiz Database Programming with SQL Oracle Bahasa Indonesia

section-7-quiz-database-programming-with-sql-oracle-bahasa-indonesia.png

SQL (kependekan dari: Structured Query Language) adalah bahasa standar yang digunakan untuk mengakses sebuah basis data relasional, termasuk Oracle. SQL menyediakan sekumpulan statemen untuk melakukan proses penyimpanan, modifikasi, dan pengambilan data di dalam database.

Section 7

(Jawab semua pertanyaan di bagian ini)

Evaluasi pernyataan SQL ini:
SELECT e.employee_id, e.last_name, e.first_name, d.department_name
FROM employees e, departments d
WHERE e.department_id = d.department_id AND employees.department_id > 5000
ORDER BY 4;

Klausa mana yang berisi kesalahan sintaks?

SELECT e.employee_id, e.last_name, e.first_name, d.department_name
AND employees.department_id > 5000
FROM employees e, departments d
ORDER BY 4;
WHERE e.department_id = d.department_id

Apa yang terjadi ketika Anda membuat produk Cartesian?
Tabel digabungkan ke dirinya sendiri, satu kolom ke kolom berikutnya, membuang semua kemungkinan
Semua baris yang tidak cocok dalam klausa WHERE ditampilkan
Tabel digabungkan dengan tabel lain yang sama
Semua baris dari satu tabel digabungkan ke baris tabel lainnya

Jika tabel A memiliki 10 baris dan tabel B memiliki 5 baris, berapa baris yang akan dihasilkan jika Anda melakukan join cartesian pada dua tabel tersebut?
10
50
15
5

Tabel CUSTOMERS dan SALES berisi kolom ini:
CUSTOMERS
CUST_ID NUMBER(10) PRIMARY KEY
COMPANY VARCHAR2(30)
LOCATION VARCHAR2(20)

SALES
SALES_ID NUMBER(5) PRIMARY KEY
CUST_ID NUMBER(10) FOREIGN KEY
TOTAL_SALES NUMBER(30)

Pernyataan SELECT manakah yang akan menghasilkan ID pelanggan, perusahaan, dan total penjualan?

SELECT c.cust_id, c.company, s.total_sales
FROM customers c, sales s
WHERE c.cust_id = s.cust_id (+);
SELECT cust_id, company, total_sales
FROM customers c, sales s
WHERE c.cust_id = s.cust_id;
SELECT c.cust_id, c.company, s.total_sales
FROM customers c, sales s
WHERE c.cust_id = s.cust_id;
SELECT cust_id, company, total_sales
FROM customers, sales
WHERE cust_id = cust_id;

JOINS milik Oracle dapat menggunakan klausa WHERE untuk ketentuan selain ketentuan join. Benar atau Salah?
TRUE
FALSE

Pernyataan mana tentang pernyataan SELECT sintaks join Oracle Proprietary yang benar?
Klausa FROM mewakili kriteria join.
Klausa WHERE mewakili kriteria join.
Kata kunci ON harus disertakan.
Kata kunci JOIN harus disertakan.

Berapa jumlah minimal ketentuan join yang diperlukan untuk menggabungkan 5 tabel?
4
5
Satu di atas jumlah tabel
3

Anda perlu memberikan daftar nama depan dan nama belakang semua karyawan yang bekerja di departemen Penjualan, yang mendapat bonus dan mendapatkan penjualan lebih dari $50.000. Presiden perusahaan mengharuskan penjualan dicantumkan dimulai dari jumlah tertinggi terlebih dulu. Tabel EMPLOYESS dan SALES_DEPT berisi kolom berikut:
EMPLOYEES
EMPLOYEE_ID NUMBER(10) PRIMARY KEY
LAST_NAME VARCHAR2(20)
FIRST_NAME VARCHAR2(20)
DEPTARTMENT_ID VARCHAR2(20)
HIRE_DATE DATE
SALARY NUMBER(10)

SALES_DEPT
SALES_ID NUMBER(10) PRIMARY KEY
SALES NUMBER(20)
QUOTA NUMBER(20)
MANAGER VARCHAR2(30)
BONUS NUMBER(10)
EMPLOYEE_ID NUMBER(10) FOREIGN KEY

Pernyataan SELECT manakah yang akan menyelesaikan tuags ini?

SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales
WHERE e.employee_id = s.employee_id
FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000
ORDER BY sales DESC;
SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales
FROM employees e, sales_dept s
WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000
ORDER BY sales DESC;
SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales
ORDER BY sales DESC
FROM employees e, sales_dept s
WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000;
SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s.sales
FROM employees e, sales_dept s
ORDER BY sales DESC
WHERE e.employee_id = s.employee_id AND sales > 50000 AND s.bonus IS NOT NULL;

Kolom ID tabel CLIENT yang terkait dengan kolom CLIENT_ID tabel ORDER berisi nilai null untuk baris yang harus ditampilkan. Jenis join mana yang seharusnya Anda gunakan untuk menampilkan data?
Equijoin
Outer join
Non-equijoin
Self join

Simbol mana yang digunakan untuk melakukan outer join?
#
(+)
||
*

Operator mana yang biasanya digunakan dalam non-equijoin?
NOT
OR
IN
*
>=, <=, or BETWEEN ...AND

Manakah dari berikut yang paling menjelaskan fungsi outer join?
Outer join akan menghasilkan semua baris yang memenuhi kriteria join dan akan menghasilkan nilai NULL dari satu tabel jika tidak ada baris dari tabel lain yang memenuhi kriteria join.
Outer join hanya akan menghasilkan baris yang tidak memenuhi kriteria join.
Outer join hanya akan menghasilkan data jika kedua tabel berisi pasangan kolom yang identik.
Outer join hanya akan mengembalikan data dari kolom paling kiri di satu tabel dan kolom paling kanan di tabel lainnya.

Dengan menggunakan sintaks Oracle Proprietary, operator mana yang akan Anda gunakan setelah satu nama kolom dalam klausa WHERE saat membuat outer join?
+
=
(+)
*

Kolom EMPLOYEE_ID dalam tabel EMPLOYEES terkait dengan kolom EMPLOYEE_ID tabel ORDERS.
Kolom EMPLOYEE_ID dalam tabel ORDERS berisi nilai nihil untuk baris yang perlu Anda tampilkan.
Jenis join manakah yang seharusnya Anda gunakan untuk menampilkan data?

Self-join
Outer join
Natural join
Equijoin

Untuk melakukan outer join antara DEPARMENTS dan EMPLOYEES untuk mencantumkan departemen tanpa karyawan, pilih klausa WHERE yang tepat untuk pernyataan select berikut:
SELECT d.department_name, e.last_name
FROM employees e, departments d
WHERE

e.department_id = d.department_id
e.department_id(+) = d.department_id
e.department_id = d.department_id(+)
e.department_id(+) = d.department_id(+)

Tabel PATIENTS dan DOCTORS berisi kolom ini:
PATIENTS
PATIENT_ID NUMBER(9)
LAST_NAME VARCHAR2 (20)
FIRST_NAME VARCHAR2 (20)

DOCTORS
DOCTOR_ID NUMBER(9)
LAST_NAME VARCHAR2 (20)
FIRST_NAME VARCHAR2 (20)

Anda menerbitkan pernyataan ini:
SELECT patient_id, doctor_id
FROM patients, doctors;

Hasil mana yang akan diberikan oleh pernyataan ini?

Kesalahan sintaks
Laporan yang berisi semua kemungkinan kombinasi nilai PATIENT_ID dan DOCTOR_ID
Laporan yang berisi nilai id setiap pasien dan nilai id dokternya
Laporan TANPA nilai PATIENT_ID atau DOCTOR_ID duplikat

Kapan nama kolom harus diawali dengan nama tabel dalam sintaks join?
Jika nama kolom yang sama muncul di lebih dari satu tabel kueri
Hanya jika kecepatan kueri dan performa database perlu diperhatikan
Ketika lebih dari dua tabel berpartisipasi dalam join
Tidak pernah

Ketika menggabungkan 3 tabel dalam pernyataan SELECT, berapa ketentuan join yang dibutuhkan dalam klausa WHERE?
1
3
2
0

Apa hasil dari kueri yang dipilih dari dua tabel, tetapi tidak menyertakan ketentuan join?
Pilihan baris yang sesuai dari kedua tabel

Kesalahan sintaks
Produk Cartesian
Pemilihan baris hanya dari tabel pertama

Menggunakan sintaks join Oracle Proprietary, manakah dia operator yang dapat digunakan dalam ketentuan join menggunakan operator outer join (+)?
BETWEEN...AND... and IN
AND and =
IN and =
OR and =

Pernyataan manakah tentang outer join yang benar?
Kata kunci FULL, RIGHT, atau LEFT harus disertakan.
Outer join selalu dievaluasi sebelum jenis join lainnya dalam kueri.
Operator OR tidak dapat digunakan untuk menautkan kondisi outer join.
Tabel harus diberi alias.

Non-equijoin biasanya digunakan dengan mana dari berikut? (Pilih dua)
Rentang tanggal
Rentang kolom
Rentang id baris
Rentang angka
Rentang teks

Apa yang dihasilkan ketika ketentuan join tidak ditentukan dalam kueri beberapa tabel menggunakan sintaks Join milik Oracle?
Produk Cartesian
Equijoin
Outer join
Self-join

Anda diminta membuat laporan yang mencantumkan semua pelanggan perusahaan dan semua pesanan yang pernah mereka buat. Pelanggan harus diurutkan menurut abjad dengan diawali huruf 'A', dan total pesanan terkait harus diurutkan dari jumlah tertinggi ke jumlah terendah.
Pernyataan mana dari berikut yang seharusnya Anda terbitkan?

SELECT c.custid, c.companyname, o.orderdate, o. custid, o.amount
FROM customers c, orders o
WHERE c.custid = o.custid
ORDER BY companyname, amount DESC;
SELECT c.custid, c.companyname, o.orderdate, o. custid, o.amount
FROM customers c, orders o
WHERE c.custid = o.custid
ORDER BY companyname, amount;
SELECT c.custid, c.companyname, o.orderdate, o. custid, o.amount
FROM customers c, orders o
WHERE c.custid = o.custid
ORDER BY companyname ASC, amount ASC;
SELECT c.custid, c.companyname, o.orderdate, o. custid, o.amount
FROM customers c, orders o
WHERE c.custid = o.custid
ORDER BY amount DESC, companyname;

Evaluasi pernyataan SELECT ini:
SELECT p.player_id, m.last_name, m.first_name, t.team_name
FROM player p
LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)
LEFT OUTER JOIN team t ON (p.team_id = t.team_id);

Join mana yang dievaluasi terlebih dulu?

Join antara tabel pemain dan tabel tim di PLAYER_ID
Self-join tabel pemain
Join antara tabel oemain dan tabel tim di TEAM_ID
Join antara tabel pemain dan tabel tim di MANAGER_ID

Pernyataan berikut merupakan contoh dari non-equijoin?
SELECT e.last_name, e.salary, j.grade_level
FROM employees e, job_grades j
WHERE e.salary
    BETWEEN j.lowest_sal AND j.highest_sal;

Benar atau Salah?

TRUE
FALSE

Berikut adalah pernyataan outer join yang valid:
SELECT c.country_name, d.department_name
FROM countries c, departments d
WHERE c.country_id (+) = d.country_id (+)

Benar atau Salah?

TRUE
FALSE

Anda harus menggabungkan tabel EMPLOYEES dan tabel SCHEDULES, tetapi dua tabel tidak memiliki kolom yang terkait. Jenis join manakah yang akan Anda buat?
Non-equijoin
Full outer join
Menggabungkan dua tabel tidak mungkin dilakukan.
Equijoin

Pernyataan mana mengenai menggabungkan tabel dengan non-equijoin yang salah?
Klausa WHERE harus menentukan kolom dalam satu tabel yang dibandingkan dengan kolom dalam tabel kedua
Jumlah ketentuan join yang diperlukan selalalu satu lebih sedikit dari jumlah tabel yang digabungkan
Kolom yang digabungkan harus memiliki jenis data yang kompatibel
Tidak satu pun di atas

Apakah pernyataan berikut ini akan berfungsi?
SELECT department_name, last_name
FROM employees, departments
WHERE department_id = department_id;

Tidak, Oracle tidak akan mengizinkan join dalam klausa WHERE
Ya, tidak ada kesalahan sintaks dalam pernyataan tersebut
Ya, Oracle akan mengatasi kolom department_id berasalah dari tabel mana.
Tidak, Oracle akan menghasilkan kesalahan Kolum Ditentukan Secara Ambigu.

Anda harus membuat laporan yang mencantumkan semua karyawan di departemen 10 (Penjualan) yang gajinya tidak sama dengan $25.000 per tahun. Kueri apa yang seharusnya Anda terbitkan untuk menyelesaikan tugas ini?
SELECT last_name, first_name, salary
FROM employees
WHERE salary <= 25000 AND dept_id = 10;
SELECT last_name, first_name, salary
FROM employees
WHERE salary = 25000 AND dept_id = 10;
SELECT last_name, first_name, salary
FROM employees
WHERE salary > 25000 AND dept_id = 10;
SELECT last_name, first_name, salary
FROM employees
WHERE salary != 25000 AND dept_id = 10;

Anda memiliki dua tabel yang diberi nama EMPLOYESS dan SALES. Anda ingin mengidentifikasi perwakilan penjualan yang menghasilkan pendapatan minimal $100.000.
Kueri manakah yang seharusnya Anda terbitkan?

SELECT e.first_name, e.last_name, s.sales
FROM employees, sales
WHERE e.employee_id = s.employee_id AND revenue >= 100000;
SELECT e.first_name, e.last_name, s.sales
FROM employees e, sales s
WHERE e.employee_id = s.employee_id AND revenue >= 100000;
SELECT e.first_name, e.last_name, s.sales
FROM employees e, sales s
WHERE e.employee_id = s.employee_id AND revenue > 100000;
SELECT first_name, last_name, sales
FROM employees e, sales s
WHERE e.employee_id = s.employee_id AND revenue > 100000;

Itulah artikel Section 7 Quiz Database Programming with SQL Oracle Bahasa Indonesia kali ini, semoga bermanfaat.

Posting Komentar untuk "Section 7 Quiz Database Programming with SQL Oracle Bahasa Indonesia"