From 8b08e0487faa96bc7eb769583bd4c10a32c5dd06 Mon Sep 17 00:00:00 2001 From: Wonder Date: Fri, 26 Sep 2025 21:59:03 +0800 Subject: [PATCH] =?UTF-8?q?=20=F0=9F=94=84Update:=20MySQL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MySQL/10. 检索.md | 128 ++++++++++++++++++++++++++++++++++++++++++++ MySQL/11. 表连接.md | 4 ++ 2 files changed, 132 insertions(+) create mode 100644 MySQL/10. 检索.md create mode 100644 MySQL/11. 表连接.md diff --git a/MySQL/10. 检索.md b/MySQL/10. 检索.md new file mode 100644 index 0000000..3bcfea7 --- /dev/null +++ b/MySQL/10. 检索.md @@ -0,0 +1,128 @@ +# 检索 + +1. 检索列 + +```sql +SELECT cust_id +FROM Customers +``` + +2. 检索列去重 + +```sql +SELECT DISTINCT prod_id +FROM OrderItems +``` + +3. 检索列排序 + +```sql +SELECT cust_name +FROM Customers +ORDER BY cust_name DESC +``` + +4. 检索列双重排序 + +```sql +SELECT cust_id, order_num +FROM Orders +ORDER BY cust_id, order_date DESC +``` + +```sql +SELECT quantity, item_price +FROM OrderItems +ORDER BY quantity DESC, item_price DESC +``` + +5. 等值查找 + +```sql +SELECT prod_id, prod_name +FROM Products +WHERE prod_price = 9.49 +``` + +6. 范围查找 + +```sql +SELECT prod_id, prod_name +FROM Products +WHERE prod_price >= 9 +``` + +7. 范围查找排序 + +```sql +SELECT prod_name, prod_price +FROM Products +WHERE prod_price BETWEEN 3 AND 6 +ORDER BY prod_price +``` + +8. 分组筛选 + +```sql +SELECT order_num +FROM OrderItems +GROUP BY order_item +HAVING SUM(quantity) >= 100 +``` + +9. 区域匹配 + +```sql +SELECT order_num, prod_id, quantity +FROM OrderItems +WHERE prod_id IN ('BR01', 'BR02', 'BR03') AND quantity >= 100 +``` + +10. 模糊匹配 + +```sql +SELECT prod_name, prod_desc +FROM Products +WHERE prod_desc LIKE '%toy%' +``` + +11. 别名 + +```sql +SELECT vend_id, vend_name AS vname, vend_address AS vaddress, vend_city AS vcity +FROM Vendors +ORDER BY vname +``` + +12. 列计算 + +```sql +SELECT prod_id, prod_price, prod_price * 0.9 AS sale_price +FROM Products +``` + +13. 函数 + +```sql +SELECT cust_id, cust_name, UPPER(CONCAT(SUBSTRING(cust_contact, 1, 2), SUBSTRING(cust_city, 1, 3))) AS user_login +FROM Customers +``` + +```sql +SELECT order_num, COUNT(*) AS items +FROM OrderItems +GROUP BY order_num +HAVING items >= 3 +ORDER BY items, order_num +``` + + +14. 子查询 + +```sql +SELECT cust_id +FROM Orders +WHERE order_num IN (SELECT DISTINCT order_num + FROM OrderItems + where item_price >= 10) +``` \ No newline at end of file diff --git a/MySQL/11. 表连接.md b/MySQL/11. 表连接.md new file mode 100644 index 0000000..1b5bc0d --- /dev/null +++ b/MySQL/11. 表连接.md @@ -0,0 +1,4 @@ +# 表连接 + +![SQL JOINS](https://oss.javaguide.cn/github/javaguide/csdn/d1794312b448516831369f869814ab39.png) +