数据库——操作数据库语句(select单表查询)

数据库——操作数据库语句(select单表查询)前两天又装了oracle,开始再次学习数据库,希望这次可以系统的学习,主要是语句的学习。数据库操作语句SQL一、select   查询语句二、DDL 数据 定义 语句(create、drop、alter)三、DML数据操作语句(insert delect update)四、TCL 事务控制  语句(commit提交、rollback撤销、savep

大家好,又见面了,我是你们的朋友全栈君。

前两天又装了oracle,开始再次学习数据库,希望这次可以系统的学习,主要是语句的学习。

数据库操作语句SQL

一、select    查询语句

二、DDL  数据  定义  语句(create、drop、alter)

三、DML 数据 操作 语句(insert  delect  update)

四、TCL  事务 控制   语句(commit 提交、rollback 撤销 、savepoint 保存)

一、SELECT
    1、select 字段名1,字段名2,字段名3 from 表名;  
    2、*代表所有的字段名,不推荐。(效率差一点)
    3、字段或者表达式
            +  –  *  /
         select salary,14*salary  from s_emp;
       一个月涨500之后,再显示:
         select salary+500,14*(salary+500)from s_emp;
    4、不让显示——起别名  空格。
         select salary+500   sal,14*(salary+500) Y_sal from s_emp;
    5、字符串怎么解决:单引号

    6、把两个字符拼接起来:||
         select  first_name || last_name  name  from  s_emp;

         用下划线隔开:

             select  first_name || ‘_’ || last_name  name  from  s_emp;

    7、特殊拼接:拼接一个单引号(转义的思想)

         select  first_name || ‘‘’’ || last_name  name  from  s_emp;

          拼接两个单引号??
          select  first_name || ‘‘’’ ||‘‘’’ || last_name  name  from  s_emp;

          select  first_name || ‘‘‘‘’’ || last_name  name  from  s_emp;

         两种方法都是对的。

   7、空值(null)的处理:(空值和任何值做运算 都是空值)
      select  salary sal ,
         salary*12(1+commission_pct)/100
              from  s_emp;
      nvl(part1,part2)  null值处理函数
          当part1为空值,就返回part2
          若part1不为空,就返回part1
      NULL要早点处理
      select  salary sal ,
         nvl(salary*12(1+commission_pct)/100,
              100) from  s_emp;

   8、把s_emp表中的manager_id查询出来,如果manage_id是空  就显示成-1;
      select  nv1(manager_id,-1)  from s_emp;

   9.数据的排重:distinct
     select salary from s_emp;
     select distinct salary from s_emp;

   二、where 语句
      1、作用:限制表中的行数剧,返回。
      2、两个
         from  表名 where 1=1;
         from  表名 where 1=2;
       —   代表单行注释

         把s_emp表中salary大于1400员工信息显示出来
                select * from s_emp where salary>1400;
         把s_emp表中salary大于1400员工信息显示出来
                select * from s_emp where salary=1400;
         把s_emp表中name叫CAI员工信息显示出来
                select * from s_emp where name=’CAI’;
         
      3、常见的条件运算符: =  > <  

      4、sql提供的运算符:
          4.1  表达式表达一个闭区间;[a,b]   between  a and b;
               把s_emp表中工资在1000到1500之间的员工信息
        显示出来
                select * from s_emp where salary between 1000 and 1500;
          4.2   表达式表示一个范围的取值:in
                where  id  in(2,5,7);
          4.3   模糊查询  like
                where  name  like ‘李%’;
                where  name  like ‘%小%’;
          4.4   特殊的转义处理: _和%
                where  name  like ‘S\_%’ escape ‘\’;
                找出所有__开头的表名
                where  name  like ‘S\_\_%’ escape ‘\’;

 三、空值的判断:  is  NULL
          1、找出提成是10的员工:
               select  id  from s_emp  where commission_pct = 10;
          2、找出提成不是10的员工:
               select  id  from s_emp  where commission_pct != 10;
          3、找出提成是NULL的员工:
          select  id  from s_emp  where commission_pct is  NULL;

总结;模糊查询 、空值的判断、。。。

      
     7.7 逻辑条件:
         and   where salary >=1400  and  salary <=2500;  
         or     
         not    
 
 八、数据的排序: order by  排序标准  排序方式(desc);
     按照一定的排序标准把数据按照升序或者降序的次序进行排序
             升序:默认  asc
             降序:desc
     
     排序中的NULL是如何处理的 :作为最大值。

查询的第四部分
 

    

一、单行函数
        特点:针对SQL语句的每一行,都返回一个结果。
   多行函数(组函数):
        特点:针对SQL语句的一组数据,都返回一个结果。
     eg:upper(part1)   字母变大写(单行函数)
         select  first_name,upper(first_name)
                 from  s_emp  where  id = 1;   一行
         select  first_name,upper(first_name)
                 from  s_emp  where  id < 1;   无结果
         select  first_name,upper(first_name)
                 from  s_emp  where  id > 1;   24个结果
 
         count(part1)   统计函数(组函数)
         select  first_name,count(first_name)
                 from  s_emp  where  id = 1;   出现错误
         select  count(first_name)
                 from  s_emp  where  id = 1;   正确  1
         select  count(first_name)
                 from  s_emp  where  id < 1;   0
         select  count(first_name)
                 from  s_emp  where  id > 1;   24

     1.3 测试表:dual
         单行单列的表
             select * from dual;
             select upper(‘hello’)  from dual;
     1.4  处理字符串的单行函数
        大写  upper(part1)   select upper(‘hello’)  from dual;
        小写  lower(part1)   select upper(‘HELLO’)  from dual;
        首字母大写   initcap(part1)    select initcap(‘hello  world’)  from dual;
        长度  length(part1)  select length(‘hello’)  from dual;          
        连接  concat(part1,part2)   select concat(‘hello  world’)  from dual;
              || 作为连接更加方便   select  first_name||last_name  name  from  s_emp;
        截取函数  substr(part1,part2,part1)
                part1:字符串
                part2:数字,从哪位开始截取,编号从1开始截取(C中是从0开始)
                part2:截取长度
    
        替换   replace(part1,part2,part1)
                part1:要处理的字符串
                part2:要被替换的内容
                part2:被替换成的内容
        to_char(part1,part2)
                part1:要处理的数字
                part2: 格式
                   ‘格式’:
                     fm:格式的开头
                      0:小数点前代表前置导零
                      9:0到9数字
                      ,:分隔符 千位
                      .:小数点
                     ¥:rmb
                      $:美元
            eg:select  to_char(12345,’fm$099,999.99′) from dual;
               select  to_char(12345.23,’fm$099,999.00′) from dual;
        按照如下格式显示工资:
           ‘fm$099,999.00’
               select  id,first_name,to_char(salary,‘fm$099,999.00’)  from  s_emp;

         1.8  处理数字函数:
              round(part1,part2)  四舍五入
                    part1:要处理数字
                    part2:默认0代表取整
                          1代表保留小数点后一位
                          -1代表对小数点前一位进行   四舍五入
                  select   round(2.54) from dual;
                  select   round(2.54,1) from dual;
                  select   round(2.54,-1) from dual;

             trunc  截取函数(用到的更多)
              trunc(part1,part2)  截取(数字,字符串等等)
                    part1:要处理数字
                    part2:默认0代表取整
                          1代表保留小数点后一位
                          -1代表对小数点前一位进行   截取
                  select   trunc(2.54) from dual;
                  select   trunc(2.54,1) from dual;
                  select   trunc(2.54,-1) from dual;
 
         1.9函数嵌套:把一个函数的返回值作为另一个的嵌套。
                      select  concat (concat(‘a’,’b’),concat(‘c’,’d’));
                      显示first_name 的后三个字符  length  substr
                  select  first_name,substr(first_name,length(first_name)-2,3)
                          from  s_emp;

附:

数据库连接

数据库——操作数据库语句(select单表查询)

创建表

数据库——操作数据库语句(select单表查询)

查询语句

数据库——操作数据库语句(select单表查询)

desc   显示表:

数据库——操作数据库语句(select单表查询)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137438.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • GoLand 2021激活码 v1.0[在线序列号]

    GoLand 2021激活码 v1.0[在线序列号],https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • Laravel-admin之Driver [] is not supported

    Laravel-admin之Driver [] is not supported

    2021年10月30日
  • Android打开第三方应用方法总结

    Android打开第三方应用方法总结

  • 电脑屏幕录制gif_windows录屏快捷键

    电脑屏幕录制gif_windows录屏快捷键有读者在后台问,有没有好用的Windows电脑制作gif工具,那必须有,今天软件工具侠给大家推荐一款非常好用的录屏制作gif软件。主页主页第一个选项就是录屏制作gif:可以设置每秒录制的帧数(1-60),默认是每秒15帧,也可以设置录屏的宽高,也可以直接拖动录屏框调整大小。设置页面:也可以设置捕获屏幕的方式:手动,通过按“捕获”按钮或等效的屏幕快捷键来手动捕获每一帧用户交互,每次单击或键…

  • PyCharm for Anaconda

    PyCharm for AnacondaPyCharmforAnaconda新版本的特点智能Python帮助 PyCharm提供了智能代码完成、代码检查、动态错误突出显示和快速修复,以及自动化的代码重构和丰富的导航功能。 Web开发框架 PyCharm为现代web开发框架(如Django、Flask、Google应用程序引擎、Pyramid和web2py)提供了强大的特定于框架的支持。 科学工具(新版本的)…

  • drupal安装教程mysql_Drupal(一)下载与安装

    drupal安装教程mysql_Drupal(一)下载与安装Drupal是一个使用PHP语言编写的开源内容管理系统(CMS)。然后将安装包解压到web服务器根目录下,如果你使用的是XAMPP,则解压到xampp目录下的htdocs目录。要安装Drupal,我们首先应该建立一个数据库,如在mysql中建立一个名为drupal的数据库。Drupal默认语言是英语,如果我们要创建中文站点,应该首先从http://localize.drupal.org/trans…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号