找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1662|回复: 3

SQL语言基本语句介绍

[复制链接]
发表于 2004-12-3 02:52:32 | 显示全部楼层 |阅读模式
<>因为平时要用一些数据库,大家难免就要用到SQL语句,这里列出一些出来方便大家查询:</P>
表的建立
<>关系数据库的主要特点之一就是用表的方式组织数据。表是SQL语言存放数据、查找数据以及更新数据的基本数据结构。在SQL语言中,表有严格的定义,它是一种二维表,对于这种表有如下规定:</P>
<>1)每一张表都有一个名字,通常称为表名或关系名。表名必须以字母开头,最大长度为30个字符。
2)一张表可以由若干列组成,列名唯一,列名也称作属性名。
3)表中的一行称为一个元组,它相当于一条记录。
4)同一列的数据必须具有相同的数据类型。
5)表中的每一个列值必须是不可分割的基本数据项。</P>
<P>注意:当用户需要新的数据结构或表存放数据时,首先要生成一个表。</P>
<P>语法:</P>
<P>CREATE TABLE 表名 [表约束]</P>
<P>(列名1 数据类型 [缺省值1,列约束1]</P>
<P>(列名2 数据类型 [缺省值2,列约束2]</P>
<P>…</P>
<P>列名n 数据类型 [缺省值n,列约束n]</P>
<P>[TABLESPACE 表空间名称]</P>
<P>[STORAGE (存贮的子句)]</P>
<P>[ENABLE 约束名]</P>
<P>[DISABLE 约束名]</P>
<P>  插入数据
<P> </P>
<P>当一个表新建成时,它里面没有数据,通过向表中扦入数据,建成表的实例。</P>
<P>语句句法:</P>
<P>INSERT INTO 表名[(列名1,…)]</P>
<P>VALUES(值1,值2,…,值n)</P>
<P>[子查询];</P>
<P>假设有一张表Student如下所示:</P>
NONAMEAGE1001A121002B14
<P>将新学生E增加到上表中,并按照表的结构将信息添加完整,需要如下语句:</P>
<P>INSERT INTO STUDENT VALUSE(1003, 'E',12);</P>
<P>  修改数据
<P>对表中已有数据进行修改,语句句法:</P>
<P>UPDATE 表名SET 列名1=表达式1,列名2=表达式2,…</P>
<P>WHERE 条件;</P>
<P>例如:对下表Student</P>
NONAMEAGE1001A121002B14
<P>将B的年纪改为18;应该执行以下语句:</P>
<P>UPDATE STUDENT SET AGE=18 WHERE NAME='B';</P>
<P> 
删除数据
<P>删除表中已有数据,不能删除不存在的数据。</P>
<P>语句句法:

<P>DELETE FROM 表名 WHERE 条件;</P>
<P>例如:</P>
<P>对下面Student表进行删除,要删除其中年纪为12的学生;</P>
NONAMEAGE1001A121002B14
<P>DELETE FROM STUDENT WHERE AGE=12;
</P>表结构的修改
<P>在已存在的表中增加新列,语句句法:</P>
<P>ALTER TABLE 表名 ADD(新列名 数据类型(长度));</P>
<P>    例如:</P>
<P>    ALTER TABLE STUDENT ADD (DEPARTMENT CHAR(8));</P>
<P>b.增加已有列的数据类型。</P>
<P>    例如:</P>
<P>    ALTER TABLE STUDENT MODIFY(NAME VARCHAR2(25));</P>
<P>  表的删除
<P>将已经存在的表删除,语句句法:</P>
<P>    DROP TABLE表名;</P>
<P>    例如:</P>
<P>    DROP TABLE EMP;</P>
<P>  查询语句
<P>SELECT命令的语法为:</P>
<P>SELECT [DISTINCT|ALL] {*|模式名.] {表名|视图名|</P>
<P>快照名] .*…| {表达式[列别名]…} } [, [模式名. ] {表名|</P>
<P>视图名|} .*…| 表达式[列别名] ]…</P>
<P>FROM [模式名.] {表名|视图名|快照名} [@数据库链名] [表别名]</P>
<P>[, [模式名.] {表名|视图名|快照名} [@数据库链名]</P>
<P>[表别名] ]…</P>
<P>[WHERE条件]</P>
<P>[START WITH条件 CONNECT BY 条件]</P>
<P>[GROUP BY表达式[,表达式] …[HAVING条件]</P>
<P>[UNION|UNION ALL |INTERSECT|MINUS]SELECT命令</P>
<P>[ORDER BY{表达式|位置} [ASC|DESC] [, {表达式|位置[ASC|DESC]}]…]</P>
<P>例如:对于STUDENT表:</P>
NONAMEAGE1001AE121002BT14
<P>(1) 查询年纪为12的学生姓名;</P>
<P>SELECT STUDENT.NAME FROM STUDENT WHERE AGE=12;</P>
<P>(2) 查询年纪在12至16岁之间的学生姓名;</P>
<P>SELECT STUDENT.NAME FROM STUDENT WHERE AGE BETWEEN 12 AND 16;</P>
<P>(3) 查询年纪不在12至16岁之间的学生姓名;</P>
<P>SELECT STUDENT.NAME FROM STUDENT WHERE AGE NOT BETWEEN 12 AND 16;</P>
<P>(4) 查询所有姓名以A开头的学生的姓名;</P>
<P>SELECT STUDENT.NAME FROM STUDENT WHERE NAME LIKE 'A%';</P>
<P>(5) 列出所有学生年纪的和,年纪的平均值,最大值,最小值,最大值与最小值之间的差值;</P>
<P>SELECT AVG(AGE), SUM(AGE), MAX(AGE), MIN(AGE), MAX(AGE)-MIN(AGE);</P>
<P>(6) 将所有学生按学号顺序升序排列;</P>
<P>SELECT * FROM STUDENT ORDER BY NO DESC;</P>
<P>(7) 将所有学生按学号顺序升序排列;</P>
<P>SELECT * FROM STUDENT ORDER BY NO ASC;</P>
发表于 2009-9-16 23:15:12 | 显示全部楼层
回复 顶

使用道具 举报

发表于 2009-9-16 23:15:14 | 显示全部楼层
回复 顶

使用道具 举报

发表于 2009-9-18 15:03:53 | 显示全部楼层
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-29 11:04 , Processed in 0.029302 second(s), 6 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表