码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 数据库知识


    1、count(1),count(*),count(列名)的区别和联系?

            当表的数据量很大时候,count(1)比count(*) 更加消耗时间,如果count(1)是聚索引那么count(*)会更快一些,因为count(*)会自动优化指定哪一字段。 综上所述,count(1)和count(*)基本没有区别!

            count(1)会统计表中的所有记录数,包含NULL,count会统计该字段在表中的出现次数,忽略了NULL的情况。

            三者区别:count(*)包含了所有的列,相当于所有的行,统计结果不忽略NULL

                              count(1)包含了忽略所有的列,用1表示代码行,统计结果不忽略NULL

                              count会统计该字段出现的次数,统计结果忽略NULL

    执行效率上面:如果目标列名是主键count > count(1) = count(*)

                             如果目标列名非主键count(1) = count(*) > count

                             如果表多列都没主键count(1) > count(*) > count(列名)

    最佳查找方法是:SELECT COUNT(主键列)

    2、DROP、TRUNCATE、DELETE的区别?

    DROP用来删除数据库和表格

    TEUNCATE用来删除表格里的数据,但是不能回滚

    DELEDE用来删除表格里的数据,可以回滚

    3、内连接和外连接的区别?

    内连接包括等值连接和自然连接,内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行;外连接有左外连接和右外连接,可以由以下关键字指定:LEFT JOIN,RIGHT JOIN,INNER JOIN

    4、SQL编码题:
    4.1 查询学号1003-1010的学生信息(通过BETWEEN关键字实施)

    1. SELECT *
    2. FROM student
    3. WHERE student.StudentNo BETWEEN 1002 AND 1010;

    4.2 查询邮箱为空的学员信息.(通过<=>关键字实施)

    SELECT * FROM student WHERE student.Email <=> NULL;


    4.3 根据学号得到所有学生平均分后,过滤掉80分以下的学生后,对成绩进行降序排列,取前三名

    1. SELECT result.StudentNo ,AVG(result.StudentResult)
    2. FROM result
    3. GROUP BY (result.StudentNo)
    4. HAVING AVG(reesult.StudentResult) >= 80
    5. ORDER BY (AVG(result.StudentResult)) DESC
    6. LIMIT 0, 3;

  • 相关阅读:
    Servlet系列:(HttpServletRequest、HttpServletResponse、ServletContext、ServletConfig)详解
    英语一和英语二难度差多少?英语二翻译更长为什么说其实更容易?
    Android webview加载网页实时调试
    Java Elasticsearch 按一定时间间隔(timeInterval)循环查询数据
    “安全即服务”为网络安全推开一道门
    EasyRecovery15非常好用的电脑数据恢复软件
    nodejs+java+python网上体育用品销售系统
    SpringBoot 09 Web前奏和国际化
    Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)
    Cache Lab
  • 原文地址:https://blog.csdn.net/m0_70349048/article/details/132921330
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号