热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

步入“数据库”的礼堂SQL数据库基本功:语句教程

本文对SQL的语法进行了综合性的讲述,无论您是一位SQL的新手或是一位老将,您将都会对SQL有一个大致上的了解,另外,您将能够正确的运用SQL来由数据库中获取信息。虽然要对SQL又很透彻的了解并不是一朝一夕可以完成的,可是对SQL有个基本的了解并不难。一、

本文对SQL的语法进行了综合性的讲述,无论您是一位SQL的新手或是一位老将,您将都会对SQL有一个大致上的了解,另外,您将能够正确的运用SQL来由数据库中获取信息。虽然要对SQL又很透彻的了解并不是一朝一夕可以完成的,可是对SQL有个基本的了解并不难。 一、



本文对SQL的语法进行了综合性的讲述,无论您是一位SQL的新手或是一位老将,您将都会对SQL有一个大致上的了解,另外,您将能够正确的运用SQL来由数据库中获取信息。虽然要对SQL又很透彻的了解并不是一朝一夕可以完成的,可是对SQL有个基本的了解并不难。


一、表格处理:

表格式数据库中存储资料的基本架构,分为栏位column和列row


CONSTRAINT:限制存入
NOT NULL:不允许空值
UNIQUE:限制每一个栏位中的资料都是不一样的
CHECK:限制保证每一个栏位中的所有资料都符合某些条件。
主键(PrimaryKey):必须确保用来作主键的栏位是设定[NOT NULL]
外来键(ForeignKey):一个或数个指向另外一个表格主键的栏位,目的是确定资料的参考完整性,即只有被允许的资料值才会被存入数据库

组合键:CompositeKey


CREATE TABLE:对表格下定义时,需要对每一栏位的资料种类下定义
CREATE  TABLE  ”表格名”(”栏位1”“栏位1  资料种类” ,”栏位2 ““栏位2 资料种类”……)
CREATE  TABLE  “表格名” (“栏位1” “栏位1  资料种类”) REFERENCE  CUSTOMER(栏位1)
ALTER   TABLE “表格名1 ‘ ADD FOREIGN KEY (表格名1的栏位名) REFERENCE CUSTOMER(表格2的栏位名)

CREATE  TABLE 表格名 (“栏位1 ““栏位1 资料种类” Primary Key)
ALTER   TABLE 表格名 ADD PRIMARY KEY(“栏位1”)


CREATE VIEW:视图可用于连接两个表格,便于找出所需信息,视图是虚拟表格,是建立在表格之上的一种架构,本身并不实际存储资料。
CREATE VIEW “视图名” as “SQL语句”

CREATE INDEX:快速查找所需资料,利于系统效率.索引命名可在名称前加一个首字母,或者表格名及栏位名

CREATE  INDEX  “索引名”  ON  “表格名” (COLUMN NAME)

ALTER TABLE:

a)增加一个栏位:

                    ADD “栏位1 ““栏位1 资料种类”

b)删去一个栏位:

                    DROP “栏位1”
c)改变栏位名称:

                    CHANGE “原本栏位名”“新栏位名”“新栏位资料种类”
d)改变栏位资料种类:

                    MODIFY“栏位1”“新资料种类”
DROP TABLE:从数据库清除一个表格

DROP TABLE “表格名”
TRUNCATE TABLE:从数据库清除一个表格中的所有资料,但是表格本身继续存在
TRUNCATE  TABLE”表格名”

INSERT INTO:一次性输入多笔资料,SELECT指令将表格2 中的资料输入到表格1

INSERT  INTO  “表格名”(”栏位1”,”栏位2”,……) VALUES (”值1”,”值2”,……)
INSERT  INTO  “表格1”(”栏位1”,”栏位2”,……) SELECT “栏位3”,”栏位4”,……FROM “表格2”
UPDATE:修改表中的资料:
UPDATE “表格名” SET “栏位1”=[新值]  WHERE {条件}
DELETE FROM:由数据库中去除一些资料
DELETE FROM”表格名” WHERE {条件}

二、Sql指令:
SQL如何被用来存储,读取,以及处理数据之中的资料。


1,SELECT:
SELECT  “栏目名”  FROM  “表格名”
2,DISTINCT排除相同点的值
SELECT  DISTINCT  “栏位名”  FROM”表格名”
3,WHERE:有条件的选取资料
SELECT  “栏位名”  FROM  ”表格名”  WHERE “条件”
4,AND /OR复杂条件的连接
SELECT “栏位名” FROM  ”表格名”  WHERE  “简单条件”  {[AND /OR]  “简单条件”}+
5,IN:限定范围内选取资料
SELECT  “栏位名”  FROM  ”表格名”   WHERE  “栏位名” IN (’值一’,’值二’,……)
                                        WHERE  “栏位名” =‘值一’
6,BETWEEN:限定范围内选取资料
SELECT  “栏位名”  FROM  ”表格名”   WHERE  “栏位名” BETWEEN ‘值一’  AND  ‘值2’
7,LIKE:模式匹配
SELECT  “栏位名”   FROM  ”表格名”  WHERE  “栏位名” like  {模式}
a)A_Z:表示所有以A开头,另一个人一致的字源,且以Z结尾的字符。
b)ABC%:表示所有以ABC为开头的字符串
c)%AN%:表示所有含有AN这个模式的字符串

8,ORDER BY:对抓出的资料有系统显示,升序或降序
SELECT “栏目名” form “表格名” WHERE “条件”ORDER BY “栏目名” [ASC/DESC]     ORDER BY “栏位1”[ASC/DESC],”栏位2”[ASC/DESC]
9,函数:
数字运算:AVG(平均),COUNT(计数),MAX(最大值),MIN(最小值),SUM(总合)
数学运算:加+,减-
文字类:文字相连CONCATENATION,文字修饰TRIM,字符串substring
10,GROUP BY:至少有一个栏位包含函数运算时,需用此指令
SELECT “栏位1”,SUM(“栏位2”)  FROM  ”表格名”  GROUP BY  “栏位1” 
11,HAVING:对函数产生的值产生设定条件
SELECT  “栏位1”,SUM(“栏位2”)  FROM  ”表格名”  GROUP BY “栏位1”  HAVING (函数条件)
12,ALIAS:别名,表格别名或栏目别名,一般别名放在要替代的物件背后,中间一个空格分开。
SELECT  “表格别名”.”栏位1”  “栏位别名”  FROM  ”表格名”  “表格别名”
13,表格链接:
a)外部链接OUTER JION:两表不一定有联系。在WHERE子句要选出所有资料的那个表之后加上一个+,来代表表格内的资料我们都要的。
b)内部链接INNER JION:即左连接LEFT JION 当两表中都有相同值时,才会被选出。

14,
CONCATENATE:将不同栏位获得的资料串联在一起。+
SUBSTRING:用来抓出一个栏位资料中的其中一部分。
15,TRIM:除掉一个字符串的字头或字尾,常见于移除字首或字尾的空白
TRIM([[位置][要移除的字符串]FROM] 字符串)
[位置]可能值:leading起头,traling结尾,both起头及结尾
a)LTrim(字符串):将字符串起头的空白移除
b)RTrim(字符串):将字符串结尾的空白移除






推荐阅读
  • 本文通过一系列实验,探讨了Oracle 11g数据库中密码错误验证延迟特性对用户登录速度的影响。实验旨在验证当某个用户因输入错误密码而触发延迟时,是否会影响其他用户的正常登录速度。 ... [详细]
  • SQL查询与事务管理:深入解析
    本文详细介绍了SQL查询的基本结构和高级特性,包括选择、分组查询以及权限控制等内容,并探讨了事务管理中的并发控制策略,旨在为数据库管理员和开发人员提供实用指导。 ... [详细]
  • 面对众多的数据分析工具,如何选择最适合自己的那一个?对于初学者而言,了解并掌握几种核心工具是快速入门的关键。本文将从数据处理的不同阶段出发,推荐三种广泛使用的数据分析工具。 ... [详细]
  • Java连接MySQL数据库的方法及测试示例
    本文详细介绍了如何安装MySQL数据库,并通过Java编程语言实现与MySQL数据库的连接,包括环境搭建、数据库创建以及简单的查询操作。 ... [详细]
  • 本文详细介绍了如何使用SQL*Plus连接Oracle数据库以及使用MySQL客户端连接MySQL数据库的方法,包括基本命令和具体操作步骤。 ... [详细]
  • 本文探讨了如何使用Scrapy框架构建高效的数据采集系统,以及如何通过异步处理技术提升数据存储的效率。同时,文章还介绍了针对不同网站采用的不同采集策略。 ... [详细]
  • 本文探讨了如何在SQL Server Reporting Services (SSRS)中利用TOP N功能来筛选和展示数据集中的前N条记录。通过正确的配置图表属性中的筛选器设置,可以轻松实现这一目标。 ... [详细]
  • PHP中Smarty模板引擎自定义函数详解
    本文详细介绍了如何在PHP的Smarty模板引擎中自定义函数,并通过具体示例演示了这些函数的使用方法和应用场景。适合PHP后端开发者学习。 ... [详细]
  • 本文详细介绍了MySQL InnoDB存储引擎中的Redo Log和Undo Log,探讨了它们的工作原理、存储方式及其在事务处理中的关键作用。 ... [详细]
  • 本文探讨了MySQL中的死锁现象及其监控方法,并介绍了如何通过配置和SQL语句调整来优化数据库性能。同时,还讲解了慢查询日志的配置与分析技巧。 ... [详细]
  • MVC模式下的电子取证技术初探
    本文探讨了在MVC(模型-视图-控制器)架构下进行电子取证的技术方法,通过实际案例分析,提供了详细的取证步骤和技术要点。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 数据输入验证与控件绑定方法
    本文提供了多种数据输入验证函数及控件绑定方法的实现代码,包括电话号码、数字、传真、邮政编码、电子邮件和网址的验证,以及报表绑定和自动编号等功能。 ... [详细]
  • 本文介绍了MySQL窗口函数的基本概念、应用场景及常见函数的使用方法。窗口函数在处理复杂查询时非常有用,例如计算每个用户的订单排名、环比增长率、以及动态聚合等。 ... [详细]
  • 本文介绍了如何在 Oracle 数据库中查询重复数据,并提供了多种方法来筛选和删除重复记录,包括基于单个字段和多个字段的重复数据处理。 ... [详细]
author-avatar
李太有才_905
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有