Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

MYSQL QUIZ PART 2

Total questions: 10

Worksheet time: 6mins

Name
Class
Date
1.

SELECT user_id, SUM(total) FROM orders GROUP BY user_id HAVING total > 1000;

Apa yang salah dari query di atas?

a)

Tidak ada kesalahan, query benar

b)

Kolom total harus di-alias di HAVING

c)

total tidak boleh muncul di HAVING karena tidak di-alias di SELECT

d)

GROUP BY harus dihilangkan

2.

SELECT nama, kota FROM users WHERE kota IN (SELECT kota FROM orders);

Apa hasil dari query ini?

a)

Menampilkan user yang kota-nya ada di tabel orders

b)

Menampilkan semua user dan semua kota dari orders

c)

Error karena subquery tidak boleh di WHERE

d)

Menampilkan user yang tidak ada di orders

3.

SELECT u.nama, o.total

FROM users u

INNER JOIN orders o ON u.id = o.user_id

WHERE o.total > (SELECT AVG(total) FROM orders);

Apa yang dilakukan query ini?

a)

Menampilkan user dan order dengan total di atas rata-rata

b)

Menampilkan semua user meskipun tidak punya order

c)

Error karena subquery tidak bisa di WHERE

d)

Menampilkan user dengan order terkecil

4.

SELECT u.nama, COUNT(o.id) AS jumlah_order

FROM users u

LEFT JOIN orders o ON u.id = o.user_id

GROUP BY u.id

HAVING jumlah_order = 0;

Apa yang ditampilkan?

a)

User yang tidak punya order

b)

User yang punya order

c)

Error karena jumlah_order tidak boleh di HAVING

d)

Semua user

5.

SELECT u.nama, COUNT(o.id) AS jumlah_order

FROM users u

RIGHT JOIN orders o ON u.id = o.user_id

GROUP BY o.id;

Apa yang dilakukan query ini?

a)

Menampilkan user yang tidak punya order

b)

Menampilkan semua user meskipun tidak ada order

c)

Menampilkan semua order dan user yang terkait

d)

Menampilkan jumlah order per user

6.

SELECT *

FROM users

WHERE created_at BETWEEN '2025-01-01' AND '2025-12-31'

AND usia IN (20, 25, 30);

Apa yang dilakukan query ini?

a)

Menampilkan user dengan usia 20, 25, atau 30 dan dibuat di tahun 2025

b)

Menampilkan user dengan usia 20 dan dibuat di 2025

c)

Error karena BETWEEN tidak bisa dipakai dengan AND

d)

Menampilkan user dengan usia selain 20, 25, 30

7.

SELECT p.nama, SUM(oi.qty) AS total_qty

FROM products p

JOIN order_items oi ON p.id = oi.product_id

GROUP BY p.id

HAVING total_qty > (SELECT AVG(qty) FROM order_items);

Apa yang ditampilkan?

a)

Produk dengan total_qty di atas rata-rata qty order_items

b)

Semua produk

c)

Error karena subquery tidak boleh di HAVING

d)

Produk dengan total_qty di bawah rata-rata

8.

SELECT u.nama, SUM(o.total) AS total_pembelian

FROM users u

LEFT JOIN orders o ON u.id = o.user_id

GROUP BY u.id;

Apa yang ditampilkan oleh query ini?

a)

Menampilkan total pembelian per user

b)

Menampilkan semua user tanpa total pembelian

c)

Menampilkan total pembelian untuk semua order

d)

Menampilkan user yang tidak melakukan pembelian

9.

SELECT p.nama, COUNT(oi.id) AS jumlah_item

FROM products p

JOIN order_items oi ON p.id = oi.product_id

GROUP BY p.id;

Apa yang ditampilkan oleh query ini?

a)

Menampilkan jumlah item per produk

b)

Menampilkan semua produk tanpa jumlah item

c)

Menampilkan produk yang tidak ada dalam order_items

d)

Menampilkan semua item dari order_items

10.

SELECT u.nama, AVG(o.total) AS rata_rata_order

FROM users u

JOIN orders o ON u.id = o.user_id

GROUP BY u.id;

Apa yang dilakukan query ini?

a)

Error karena AVG tidak boleh digunakan di GROUP BY

b)

Menampilkan semua user dan total order mereka

c)

Menampilkan user yang tidak memiliki order

d)

Menampilkan rata-rata total order per user