自学内容网 自学内容网

关系数据库标准语言SQL(5,6)

目录

索引的建立与删除

建立索引

删除索引

数据查询

查询指定列

查询全部列

查询经过计算的列


索引的建立与删除

        建立索引的目的:加快查询速度。
        谁可以建立索引:DBA或表的属主(即建立表的DBMS一般会自动建立以下列上的索引:
PRIMARY KEY;
UNIQUE;

索引相当于一本书的目录。

        RDBMS中索引一般采用B+树、HASH索引来实现B+树索引具有动态平衡的优点,HASH索引具有查找速度快的特点。采用B+树还是HASH索引则由具体的RDBMS:来决定。

建立索引

        建立索引语句格式: CREATE [UNIQUE][CLUSTER] INDEX<索引名>ON<表名>(<列名>[<次序>][,<列名>[<次序>]…);

       UNIQUE表明此索引每一个索引值只对应唯一的数据。

        CLUSTER表示要建立的索引是聚簇索引。聚簇索引是指索引顺序与表中记录的物理顺序一致的索引组织。

        建立聚簇索引后能保证实际的逻辑顺序与物理顺序相同。

        一个基本表最多只能建立一个聚簇索引。

删除索引

        DROP INDEX<索引名>;

        删除索引时,系统会从数据字典中删去有关该索引的描述。

数据查询

        SELECT[ALLDISTINCT]<目标列表达式><目标列表达式>

         FROM<表名或视图名>[表名或视图名>][WHERE<条件表达式>][GROUP BY-<列名I>HAVING<条件表达式>I[ORDER BY<列名2>[ASC|DESC

        查询时需要知道三个方面内容,去哪个表里查,按照什么条件查,最后显示什么内容。

        英文不区分大小写,标点符号要是英文

查询指定列

【例】查询全体学生的学号与姓名。 SELECT Sno,Sname FROM Student;

【例】查询全体学生的姓名、学号、所在系。 SELECT Sname,Sno,Sdept FROM Student;

查询全部列

【例】查询全体学生的详细记录。 SELECTSno,Sname,Ssex,Sage,Sdept FROM Student;

或:SELECT*FROM Student;

查询经过计算的列

【例】查全体学生的姓名及其出生年份 SELECT Sname,2004-Sage FROM Student;

【例】查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。

SELECT Sname,Year of Birth,2004-Sage, LOWER(Sdept)FROM Student;

【例】使用列别名改变查询结果的列标题。

SELECT Sname NAME,Year of Birth:BIRTH,2004-Sage BIRTHDAY,LOWE(Sdept)DEPARTMENT FROM Student;

修改Sname别名为NAME,Year of Birth 别名为BIRTH,Sdept别名为DEARTMENT。


原文地址:https://blog.csdn.net/2301_79431343/article/details/142534299

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!