数据库 · 16 10 月, 2024

MySQL數據庫查詢練習題精選 (MySQL數據庫查詢習題)

MySQL數據庫查詢練習題精選

MySQL是一種流行的開源關聯數據庫管理系統,廣泛應用於各種網站和應用程序中。對於開發者和數據分析師來說,熟練掌握MySQL查詢語言是必不可少的。本文將介紹一些精選的MySQL查詢練習題,幫助讀者提升其數據庫查詢技能。

基礎查詢練習

在開始進行複雜查詢之前,首先需要掌握基本的查詢語法。以下是一些基礎查詢的練習題:

  • 題目1:從名為“employees”的表中選擇所有員工的姓名和工號。
  • SELECT employee_id, employee_name FROM employees;
  • 題目2:查詢“products”表中所有價格高於100的產品名稱和價格。
  • SELECT product_name, price FROM products WHERE price > 100;

條件查詢練習

在實際應用中,經常需要根據特定條件篩選數據。以下是一些條件查詢的練習題:

  • 題目3:查詢“orders”表中所有在2023年內下的訂單。
  • SELECT * FROM orders WHERE order_date BETWEEN '2023-01-01' AND '2023-12-31';
  • 題目4:從“customers”表中查詢來自“香港”的所有客戶。
  • SELECT * FROM customers WHERE city = '香港';

聚合函數練習

聚合函數可以幫助我們對數據進行統計分析。以下是一些使用聚合函數的練習題:

  • 題目5:計算“sales”表中所有銷售記錄的總銷售額。
  • SELECT SUM(sale_amount) AS total_sales FROM sales;
  • 題目6:查詢“employees”表中每個部門的員工數量。
  • SELECT department_id, COUNT(*) AS employee_count FROM employees GROUP BY department_id;

聯接查詢練習

聯接查詢是數據庫中非常重要的一部分,能夠將多個表中的數據結合起來。以下是一些聯接查詢的練習題:

  • 題目7:查詢“employees”表和“departments”表中所有員工及其所屬部門的名稱。
  • SELECT e.employee_name, d.department_name 
    FROM employees e 
    JOIN departments d ON e.department_id = d.department_id;
  • 題目8:查詢“orders”表和“customers”表中所有訂單及其對應客戶的姓名。
  • SELECT o.order_id, c.customer_name 
    FROM orders o 
    JOIN customers c ON o.customer_id = c.customer_id;

子查詢練習

子查詢是一種強大的查詢方式,可以在一個查詢中嵌套另一個查詢。以下是一些子查詢的練習題:

  • 題目9:查詢“employees”表中工資高於平均工資的員工姓名。
  • SELECT employee_name 
    FROM employees 
    WHERE salary > (SELECT AVG(salary) FROM employees);
  • 題目10:查詢“products”表中價格高於“categories”表中所有類別的平均價格的產品名稱。
  • SELECT product_name 
    FROM products 
    WHERE price > (SELECT AVG(price) FROM products GROUP BY category_id);

總結

通過以上的練習題,讀者可以逐步提升自己的MySQL查詢技能,從基礎查詢到複雜的聯接和子查詢,這些都是日常數據庫操作中常見的需求。無論是開發者還是數據分析師,掌握這些查詢技巧都將大大提高工作效率。

如果您需要穩定的數據庫支持,考慮使用香港VPS服務,這將為您的應用提供強大的後端支持。