数据库(学习整理)----4--Oracle数据查询(基础点1)

其他:
    计算机中的内存是线性的,一维。

    length(‘‘)计算字符的个数,而不是字节的个数

    Oracle中的日期类型和数值类型的数据可以做运算符(>,=,<,<>)比较

如果在启动Oracle数据库的时候出现了:ora-12514的错误编号的提示。
解决方案:
    去Oracle安装目录下面找到:C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN目录下面:
     找到:listener.ora文件和tnsnames.ora文件
     修改文件的访问权限,管理员身份打开,
     修改文件中的:Host:对应的数据为:自己电脑的IP:
            如何修改:localhost 或者 127.0.0.1 或者 当前电脑的真是IP

1、查询:

    关键字        后面可以使用

    select        *、字段列表、表达式、函数、查询语句

    from            表名、查询语句、视图列表

    where           (分组前)条件

    group by        分组

    having          (分组后)条件

    order by         排序 (升、降)

2、Oracle中的4组模糊关键字

    1、like、not like

    2、is null、 is not null

    3、between  and    、not  between  and 

    4、in(a,b,c)   not in(a,b,c)

3、取别名:2中方式

    1、字段名 as  别名  

        举例:
            select ename as 姓名 from emp;(推荐)

            select ename as "姓名" from emp;(不推荐)

    2、字段名  别名

        举例:
            select ename  姓名 from emp;(不推荐)

4、数据的拼接:
    拼接方式:
        使用符号:|| 来拼接数据

    举例:
        select ‘姓名:‘||ename||‘,薪水:‘||sal  as 员工薪水信息 from emp;

        结果显示:
            员工薪水信息
            姓名:Jason ,薪水:10000
            姓名:Jack , 薪水:20000
            .....

    说明:
        (1)Oracle中的数据拼接和Java中的数据拼接:
            Java中:
                使用"+"
            Oracle中:
                使用||
        (2):只有在2中情况下常用单引号:
                    1、字符型数据
                    2、日期型数据
5、排序:order by

    asc:升序
    desc:降序
    默认是asc升序    

    (1)、一次排序

        使用:
            order by  字段名 [asc/desc];

         或者

            order by  表达式 [asc/desc];

       (2)、二次排序:

        使用:
            order by  字段名1 [asc/desc],字段名2 [asc/desc] ;

         或者

            order by  字段名1 [asc/desc],表达式 [asc/desc];

    说明:
        Oracle中可排序的类型只有:数值型/日期型/字符型

6、联合查询:union

    说明:
        1、联合指的是表的上下拼接,不是列的拼接!
        2、使用三个一致条件:(数量一致,类型一致,顺序一致)。
        3、最终显示的列的列名按照第一个select的列为准!

    使用举例:
        select ename,sal as 薪水 from scott.emp where rownum<=2
        union
        select ename as 姓名,sal from scott.emp;
    查询结果:
        ENAME    薪水
        ADAMS    1100.00
        ALLEN    1600.00
        BLAKE    2850.00
        CLARK    2450.00
        FORD    3000.00
        JAMES    950.00

7、查询指定条数的数据:

    关键字:
            rowid   行游标的值,行的地址,在遍历当前行之前就会有值!
                rownum  当前行的一个伪列,
        (伪列)    当查询发生时产生,查询结束时死亡!

    特别说明:
            rownum:只能使用:<和<=,
                      并且只有在:
            select * from emp where rownum=1;这种情况下才能使用=

    举例:
        需求:如何查取6-10行数据!

        SQL语句:
            select * from scott.emp
            where  scott.emp.empno not in (select scott.emp.empno
                               from scott.emp where rownum<=5)
            and rownum<=5;

    信息提取:分页功能:

            select * from scott.emp
            where  scott.emp.empno not in (select scott.emp.empno
                               from scott.emp where rownum<=当前页码*每条显示页数)
            and rownum<=每页条数;

8、给表取别名:
    方法很简单:
        格式:
            表名  别名
    特别注意:
        在查询语句中,对表取别名之后,就不能再用表名了,应该用刚取好的别名!
时间: 2024-10-14 04:36:25

数据库(学习整理)----4--Oracle数据查询(基础点1)的相关文章

数据库学习笔记3 基本的查询流 2 select lastname+&#39;,&#39;+firstname as fullname order by lastname+&#39;,&#39;+firstname len() left() stuff() percent , select top(3) with ties

order by子句对查询结果集进行排序 多列和拼接 多列的方式就很简单了 select firstname,lastname from person.person order by lastname,firstname; 这句话表示根据lastname和firstname两列进行排序,并且是先按照lastname进行排序如果有相同的值就按照firstname进行排序. 拼接很有意思,可以写成这个样子 select lastname+','+firstname as fullname from

数据库基本操作(二)--数据查询

//数据查询 create database JXGL; //创建数据库 use JXGL;//使用数据库 create table S( Sno char(10) not null unique, Sname char(20) not null unique, Ssex char(2), Sage int, Sdept char(20)); create table C( Cno char(2) not  null primary key (Cno), Cname char(20), Teac

Hibernate学习(5)数据查询

Hibernate Query Language(HQL) Criteria Query Native SQL 下面对其分别进行解释 Hibernate Query Language: HQL提供了是十分强大的功能,它是针对持久化对象,用取得对象,而不进行update,delete和insert等操作.而且HQL是面向对象的,具备继承,多态和关联等特性. from子句: from子句是最简单的HQL,例如from Student,也可以写成 select s from Student s.它简单

MySQL学习总结(五) --- 表数据查询

查询数据记录,是指从数据库对象表中获取所要查询的数据记录,该操作可以说是数据最基本的操作之一,也是使用频率最高.最重要的数据操作. 1.单表数据记录查询 1.1.简单数据查询 SELECT field1,field2,…,fieldn FROM table_name,filed可以是表中所有的字段,也可以是部分字段. SELECT * FROM table_name ,从表中查询所有的数据.*符号可以代替所有的字段,但是这种方式不够灵活,只能按照表中字段的顺序固定进行显示,不能够随便改变字段的显

hibernate的基础学习--多表关联数据查询

Hibernate共提供4种多表关联数据查询方式 OID数据查询+OGN数据查询方式 HQL数据查询方式 QBC数据查询方式 本地SQL查询方式(hibernate很少用) 1.OID数据查询+OGN数据查询方式 1 public class TestOID_OGN { 2 3 /** 4 * 什么时候时候什么时候发送 5 */ 6 @Test 7 public void findUser() { 8 SessionFactory sf = H3Util.getSessionFactory();

web day15 数据库概述,MySQL,SQL语句,数据查询语法DQL

数据库管理系统(DBMS)的概述 1. 什么是DBMS:数据的仓库 > 方便查询 > 可存储的数据量大 > 保证数据的完整.一致 > 安全可靠 2. DBMS的发展:今天主流数据库为关系型数据库管理系统(RDBMS 使用表格存储数据) 3. 常见DBMS:Orcale.MySQL.SQL Server.DB2.Sybase 4. DBMS = 管理程序 + 多个数据库(DB) 5. DB = 多个table(不只是table,但这里先不介绍其他组成部分) 6. table的结构(即

数据库学习笔记3 基本的查询流 2

order by子句对查询结果集进行排序 多列和拼接 多列的方式就很简单了 select firstname,lastname from person.person order by lastname,firstname; 这句话表示根据lastname和firstname两列进行排序,并且是先按照lastname进行排序如果有相同的值就按照firstname进行排序. 拼接很有意思,可以写成这个样子 select lastname+','+firstname as fullname from

数据库(六)之数据查询和管理

查询语句: 简单的select语句 select [all|distinct] select_list [into new_table] from table_source [where search_conditions] [group by group_by_expression] [having search_conditions] [order by order_expression [asc | desc]] 例子: select * from 学生信息 select 姓名, 性别,

Oracle数据库学习笔记1—SQL

什么是SQL? SQL是结构化查询语言(英语:Structural Query Language,缩写:SQL),是一种特殊目的之编程语言,用于数据库中的标准数据查询语言. SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言.面向对象的程序语言.甚至是函数语言.首先要在脑袋中有个"声明"的概念,SQL 语言是为计算机声明了一个你想从原始数据中获得什么样的结果的一个范例,而不是告诉计算机如何能够得到结果. SQL语法不按套路出牌. SQL有以下的几个分类: