美文网首页
MySQL常用语句

MySQL常用语句

作者: 下雨之後 | 来源:发表于2021-03-23 22:35 被阅读0次
    • 添加
    INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...)
    
    • 删除
    DELETE FROM 表名 [WHERE 条件]
    
    • 修改
    UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2, ... [WHERE 条件]
    
    • 查询
    SELECT [DISTINCT] 列名1, 列名2, ... FROM 表名 [WHERE ...] [GROUP BY ...] [HAVING ...] [ORDER BY ...] [LIMIT ...]
    SELECT * FROM 表名 # 查询所有记录
    DISTINCT # 去除了重复的记录
    ORDER BY 字段 [ASC | DESC] # 按字段排序,ASC升序,DESC降序
    
    • 聚合函数
    SELECT COUNT(*) FROM 表名 # 查询表中的记录总数
    SELECT COUNT(p) FROM 表名 # 查询表中p的总数(不包括NULL)
    SELECT COUNT(DISTINCT p) FROM 表名 # 查询表中p的总数(不包括NULL,去除重复记录)
    SELECT MAX(p) FROM 表名 # 查询最大的p
    SELECT MIN(p) FROM 表名 # 查询最小的p
    SELECT SUM(p) FROM 表名 # 计算所有p的和
    SELECT AVG(p) FROM 表名 # 计算所有p的平均值
    
    • 子查询
    SELECT * FROM 表1 WHERE 表2_id = (SELECT id FROM 表2 WHERE name = 'xxx')
    
    • 多表查询
    INNER JOIN:内连接
    LEFT JOIN:左连接
    RIGHT JOIN:右连接
    
    JOINS
    • WHERE子句
    # 模糊查询
    WHERE name LIKE '%数%' # name中包含'数'字
    WHERE name LIKE '数%' # name以'数'字开头
    # 逻辑运算
    WHERE score > 60 AND score < 70 # score大于60且小于70
    WHERE score IN (66, 77, 88) # score等于66或77或88
    # 比较运算
    WHERE score > 60 # score大于60
    # NULL判断
    WHERE score IS NULL # score的值为NULL
    WHERE score IS NOT NULL # score的值不为NULL
    

    相关文章

      网友评论

          本文标题:MySQL常用语句

          本文链接:https://www.haomeiwen.com/subject/dtbqhltx.html