插件窝 干货文章 SQL 过滤和排序与现实生活中的例子

SQL 过滤和排序与现实生活中的例子

现实 SELECT 排序 SQL 128    来源:    2025-03-29

SQL 过滤和排序与现实生活类比

SQL 中的过滤(WHERE)和排序(ORDER BY)操作在现实生活中有许多对应的例子。让我们通过一些常见场景来理解这些数据库概念:

过滤(WHERE)的现实例子

  1. 图书馆找书

    • SQL:SELECT * FROM books WHERE genre = '科幻' AND published_year > 2010
    • 现实:在图书馆只查看科幻类且2010年后出版的书
  2. 网上购物筛选

    • SQL:SELECT * FROM products WHERE category = '电子产品' AND price < 1000 AND rating >= 4
    • 现实:在电商网站筛选电子类、价格低于1000元且评分4星以上的商品
  3. 餐厅点餐

    • SQL:SELECT * FROM menu WHERE is_vegetarian = TRUE AND calories < 500
    • 现实:查看菜单中素食且热量低于500卡路里的菜品
  4. 招聘筛选

    • SQL:SELECT * FROM candidates WHERE years_experience >= 5 AND degree = '硕士'
    • 现实:HR筛选有5年以上工作经验且拥有硕士学位的候选人

排序(ORDER BY)的现实例子

  1. 价格排序

    • SQL:SELECT * FROM products ORDER BY price DESC
    • 现实:网购时选择"价格从高到低"排序
  2. 成绩排名

    • SQL:SELECT * FROM students ORDER BY score DESC
    • 现实:学校按考试成绩从高到低公布排名
  3. 最新消息

    • SQL:SELECT * FROM news ORDER BY publish_date DESC LIMIT 10
    • 现实:新闻网站首页显示最新的10条新闻
  4. 餐厅推荐

    • SQL:SELECT * FROM restaurants ORDER BY rating DESC, distance ASC
    • 现实:美食APP按评分从高到低、距离从近到远推荐餐厅

组合应用的例子

  1. 旅行规划

    SELECT * FROM hotels 
    WHERE city = '巴黎' 
     AND price_per_night < 200 
     AND has_pool = TRUE
    ORDER BY distance_to_center ASC, rating DESC
    LIMIT 5
    
    • 现实:查找巴黎价格低于200欧/晚、带泳池的酒店,按距离市中心由近到远、评分由高到低排序,只看前5个结果
  2. 电影推荐

    SELECT * FROM movies
    WHERE genre IN ('科幻', '动作')
     AND release_date > '2020-01-01'
     AND duration < 150
    ORDER BY imdb_rating DESC
    LIMIT 3
    
    • 现实:找出2020年后上映的科幻或动作类电影,时长小于150分钟,按IMDb评分从高到低排序,只看前三部

这些例子展示了SQL查询如何对应我们日常生活中的筛选和排序行为,帮助我们更直观地理解这些数据库操作的实际意义和应用场景。