zoukankan      html  css  js  c++  java
  • MySQL笔记--查询语句实践

    有一个用户表,属性为 id,age,buytime

    创建表以及插入数据的语句

    CREATE TABLE USER(
    id INT,
    age INT,
    buytime INT
    )
    
    INSERT INTO USER VALUES(1000,10,1);
    INSERT INTO USER VALUES(1000,10,2);
    INSERT INTO USER VALUES(1000,10,3);
    INSERT INTO USER VALUES(1001,11,1);
    INSERT INTO USER VALUES(1001,11,2);
    INSERT INTO USER VALUES(1001,11,4);
    INSERT INTO USER VALUES(1002,13,2);
    INSERT INTO USER VALUES(1002,13,5);
    INSERT INTO USER VALUES(1004,10,2);
    INSERT INTO USER VALUES(1004,10,4);
    INSERT INTO USER VALUES(1004,10,5);

    查询:

    1. buytime(购买时间)在1和3之间(包含1和3)的用户年龄分布情况

    方法:先查询出购买时间在1和3之间的用户的年龄,然后对结果根据年龄分组,计算每个分组的数量

    SELECT age,COUNT(*) 
    FROM(
    SELECT age
    FROM USER
    WHERE buytime >0 AND buytime < 4
    ) 
    AS agenum
    GROUP BY age

     注意:上面的AS agenum是不可缺少的,作为表的别名(虽然在这里没有使用到)

    2.每一个用户购买时间在1到3的id 年龄 购买数量

    SELECT id,age, COUNT(*) num
    FROM USER
    WHERE buytime >0 AND buytime < 4
    GROUP BY id

    创建表以及插入数据的语句

    CREATE TABLE USER(
    id INT,
    age INT,
    buytime INT
    )
    
    SELECT * FROM USER
    
    INSERT INTO USER VALUES(1000,10,1);
    INSERT INTO USER VALUES(1000,10,2);
    INSERT INTO USER VALUES(1000,10,3);
    INSERT INTO USER VALUES(1001,11,1);
    INSERT INTO USER VALUES(1001,11,2);
    INSERT INTO USER VALUES(1001,11,4);
    INSERT INTO USER VALUES(1002,13,2);
    INSERT INTO USER VALUES(1002,13,5);
    INSERT INTO USER VALUES(1004,10,2);
    INSERT INTO USER VALUES(1004,10,4);
    INSERT INTO USER VALUES(1004,10,5);
  • 相关阅读:
    1042 Shuffling Machine
    1043 Is It a Binary Search Tree
    1044 Shopping in Mars
    1443. Minimum Time to Collect All Apples in a Tree
    1045 Favorite Color Stripe
    Java笔记八:Java内置的包装类(1)
    Java笔记七:Java数字和日期处理(2)
    Java笔记六:Java数字和日期处理(1)
    Java笔记五: Java正则表达式
    Java笔记四:Java字符串处理
  • 原文地址:https://www.cnblogs.com/gnivor/p/5391681.html
Copyright © 2011-2022 走看看