zoukankan      html  css  js  c++  java
  • 数据库的应用详解二

    数据库的应用详解二

      数据库对我们现在工作中的朋友的帮助是相当大的,在大数据处理的时候,可以让我们方面的查询,管理数据。

      尤其是当下的电商行业,都是在网络上面进行销售,所以,数据库更加彰显出其魅力。

    比如,我在指南针的几年里面,当然是公司设计好的数据库让我们用。对于客户的查询,处理等问题,包括对自己管辖范围内的客户的管理。基本上都是通过数据库来完成的。所以,经常的会用到一些基本的查询,更新,删除等等语句。

      在这里我也为大家整理了相关的资料,希望大家喜欢。

    一、新建两张表

    二、手动删除一列

    三、手动增加一列

    四、增加一个非空列

    五、修改列

      下面我们看看数据库中增加约束和删除约束的相关案例:

    六、增加一个主键约束

    七、增加一个非空约束

    八、增加一个唯一约束

    九、为性别增加一个默认约束

    十、为性别增加一个检查约束

    十一、为年龄增加一个检查约束

    十二、增加一个外键约束

    十三、增加级联删除,更新

    十四、删除某个名字的约束

    十五、一条语句删除多个约束

    十六、用一条语句为表增加多条约束


    下面看下数据的检索:

    十七、查询学生表

    十八、这列是干什么的呢?

      图中画圈的部分是干什么的呢?比如,我在中国移动办了个手机号,现在注销了。那么,在中国移动的数据库中我的数据就真的删了么?很多时候,并没有删。对于用户来讲,是删了,只是中国移动做了个标记。就是用户下次再登陆的时候登陆不进去了,但是,并没有删。在记录里面用0和1表示,这个我们一般叫做“软删除”。一般0表示false没有删,1表示true删了。

    我只想看其中的三列,这么写,见下图:

    十九、只看其中三列的信息

      上图中直接显示英文,对于用户来讲不是特别的友好,我现在需要显示它们的中文信息。也就是给列起别名。怎么给列起别名呢?

    二十、起别名

    二十一、起别名的第2,3种写法

     

    二十二、显示自定义查询结果

    二十三、基本检索

    二十四、top

    二十五、查看前十行且只有姓名

    二十六、返回前百分之十

    现在数据库里面就有11条数据,返回百分之十,是多少条呢?

    答案是:2条。

    二十七、排序

    二十八、distinct

    如果有三列,看三列当中这个的数据有没有重复,有的话,就会去掉重复。

    影响表中数据么?根本不影响。

    下面我看来看看数据库当中五个常用的聚合函数:

    当我们在工作中有什么不会的了,可以点开帮助-索引,输入:聚合函数。

    二十九、五种常用聚合函数

    下面我们看下带条件查询:

    三十、带条件查询1

    三十一、带条件查询2  in的用法

    接下来我们看下带条件查询-模糊查询

    三十二、like查询 %

    三十三、like查询 _

    三十四、like查询 [  ]

    ^ 是非的意思,跟正则表达式中一样。

    三十五、like查询 ^

    下面我们看下数据库中的Null值处理

    请你查出年龄不为空的所有人得年龄,怎么查呢?

    三十六、null就是unknow的意思

      系统没办法识别了,就是比如20不等于不知道。怎么比啊?返回的也是个unknow,在where后面就是个false,所以没有任何的查询记录。

      没法用<> 和 = 进行比较,那么我们怎么写呢?

    三十七、这么写null判断

    三十八、空值的替换

      设计器上面要插入个空值的话,得写大写的N,Null。要是什么都没写,不行的,那是个字符串为0的字符串。要是写的小写的null,是字符串为null的字符串。这是我们需要小注意的地方。

    下面我们再看下order by语句:

    一般都是写在查询语句的最后的。

    三十九、按多列的条件进行排序

    四十、按表达式排序

    一旦有了order by以后这个表就不是集合了。现在只提一下这个概念。

    接下来我们看下数据分组:

      首先,我们提出几个问题。什么时候才会遇到这个分组情况呢?分组是个什么东西呢?

      比如根据籍贯分组,根据男女分组。

      Group by在数据汇总统计的时候用,一般和聚合函数一起来用。如果不分组就用聚合函数的话,它是把组里面所有的信息当成了一组来统计。

      要是分组了再用聚合函数的话,统计的是每一组的信息。

    四十一、按照班级分组

    四十二、分组后查询每个组里面有多少个人

      现在想看看组中数据大于3的,如果要想对分组再进行筛选,我们用的是having。

    四十三、对分组以后再筛选用having

    四十四、分组判断的时候需要注意的情况

    四十五、分组判断的时候需要注意的情况二

      Select 这块哪些列能写?哪些列不能写呢?group by中包含的列和聚合函数都能写,其它的不能写。

      为什么呢?还是思考那个问题,当分完组以后,就都是组当中的信息了。在分组之前对数据的筛选用where,它们两个是不能混用的。

    四十六、简单的SQL语句执行顺序

      了解SQL语句的执行顺序能知道哪用别名?对于理解SQL语句的命令也是有好处的。当然,这里列出的是简单的SQL语句执行顺序。

    四十七、Group By练习

    下面我看来看下函数的类型转换:

    四十八、数据类型转换的两种写法

     什么情况下会遇到数据类型的转换呢?

    四十九、实际问题中遇到的数据类型转换一

    如果不转换的话,将按照字符进行排序。而不是两起来的两个或多个数字进行排序。

    五十、实际问题中遇到的数据类型转换二

      在日期转换的时候用convert就行了,120是不同数据库中时间的类型。

    接下来我们看下联合结果集union(集合运算符)

    五十一、union

      这里有个需要注意的地方,每列当中相对应的数据类型必须得一样。调一下位置是不行的。要想能联合的话,必须得保证每个列的数量相同,数据类型相同。

    五十二、联合中有一列为空的时候

      最后查询的结果集是以第一个的列名命名的。

    但从姓名和性别看的话,有几条是一样的数据。Union可以去除重复数据,如果不想去除的话,后面加个all

    五十三、union all

    那么union all在什么时候用呢?

    常见应用:底部汇总。

    五十四、年龄汇总

    五十五、成绩汇总

      下面我们看看字符串函数:

      这块的学习,使用还是要多借鉴微软的帮助。

    五十六、字符串函数

      自己可以看看replace,stuff这两个函数怎么用。

    再下来我们看看日期函数:

      日期函数还是,我们可以在数据库当中的帮助里面输入:日期和时间

    五十七、在当前时间增加时间

    五十八、计算两个时间的差

    五十九、datediff具体的应用

    六十、获取时间的某个部分

    下面这个案例对做电销工作的朋友非常的实用:

    六十一、通话第一小题

      思路:看到通话时长最长的,先求通话时长;最长-倒排序;前五条-top 5

    六十二、通话时长第二小题

    六十三、通话时长第三小题

    六十四、通话时长第四小题

    最后一个小题,暂时不公布答案,留个做思考。

     

    作者近期文章列表:

    C#基础教程(完全免费,献给代码爱好者的最好礼物。注:本作者分享自己精心整理的C#基础教程,无任何商业目的。
    希望与更多的代码爱好者交流心得,也请高手多多指点!!!)
    SQL数据库 ADO.net 数据库的应用图解一
    面向过程,面向对象中高级 面向过程,面向对象的深入理解一
    面向过程,面向对象的深入理解二
    面向对象的深入理解三
    winform基础 Winform基础
    winform中常用的控件
    面向过程 三种循环的比较
    C#中的方法(上)
    我们常见的数组
    面向对象 思想的转变
    C#中超级好用的类
    C#中析构函数和命名空间的妙用
    C#中超级好用的字符串
    C#中如何快速处理字符串
    值类型和引用类型及其它
    ArrayList和HashTable妙用一
    ArrayList和HashTable妙用二
    文件管理File类
    多态
    C#中其它一些问题的小节
    GDI+ 这些年我收集的GDI+代码
    这些年我收集的GDI+代码2
    HTML概述 你不能忽视的HTML语言
    你不能忽视的HTML语言2精编篇
    你不能忽视的HTML语言3
  • 相关阅读:
    双栈排序
    Koishi Loves Segments
    [USACO14FEB] Cow Decathlon 牛的十项全能
    [HNOI2016]网络
    koishi的数学题
    邦邦的大合唱站队
    #613(div2)
    Educational Codeforces Round 77
    #Hello 2020
    #601 (Div. 2)
  • 原文地址:https://www.cnblogs.com/zysbk/p/langmanqishi.html
Copyright © 2011-2022 走看看