SQL数据库常用命令及语法举例

SQL数据库常用命令及语法举例,第1张

下面是一些常用的SQL语句,虽然很基础,可是却很值得收藏,对于初学者非常实用

SQL常用命令使用方法:

(1) 数据记录筛选:

sql="select from 数据表 where 字段名=字段值 order by 字段名 [desc]"

sql="select from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"

sql="select top 10 from 数据表 where 字段名 order by 字段名 [desc]"

sql="select from 数据表 where 字段名 in ('值1','值2','值3')"

sql="select from 数据表 where 字段名 between 值1 and 值2"

(2) 更新数据记录:

sql="update 数据表 set 字段名=字段值 where 条件表达式"

sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

(3) 删除数据记录:

sql="delete from 数据表 where 条件表达式"

sql="delete from 数据表"  (将数据表所有记录删除)

(4) 添加数据记录:

sql="insert into 数据表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)"

sql="insert into 目标数据表 select from 源数据表"  (把源数据表的记录添加到目标数据表)

(5) 数据记录统计函数:

AVG(字段名) 得出一个表格栏平均值

COUNT(|字段名) 对数据行数的统计或对某一栏有值的数据行数统计

MAX(字段名) 取得一个表格栏最大的值

MIN(字段名) 取得一个表格栏最小的值

SUM(字段名) 把数据栏的值相加

引用以上函数的方法:

sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"

set rs=connexcute(sql)

用 rs("别名") 获取统的计值,其它函数运用同上。

(5) 数据表的建立和删除:

CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )

例:CREATE TABLE tab01(name varchar(50),datetime default now())

DROP TABLE 数据表名称 (永久性删除一个数据表)

4 记录集对象的方法:

rsmovenext              将记录指针从当前的位置向下移一行

rsmoveprevious          将记录指针从当前的位置向上移一行

rsmovefirst             将记录指针移到数据表第一行

rsmovelast              将记录指针移到数据表最后一行

rsabsoluteposition=N    将记录指针移到数据表第N行

rsabsolutepage=N        将记录指针移到第N页的第一行

rspagesize=N            设置每页为N条记录

rspagecount             根据 pagesize 的设置返回总页数

rsrecordcount           返回记录总数

rsbof                   返回记录指针是否超出数据表首端,true表示是,false为否

rseof                   返回记录指针是否超出数据表末端,true表示是,false为否

rsdelete                删除当前记录,但记录指针不会向下移动

rsaddnew                添加记录到数据表末端

rsupdate                更新数据表记录

参考资料

SQL常用命令csdn[引用时间2017-12-30]

1 1、 显示表达式的值 [表达式][表达式]X=3 X2 将显示6

2 GO | GOTO 移动记录指针到指定记录号 GO [记录号]参数[记录号]可以用数字,或TOP、BOTTOM;变量TOP表示最顶端记录、BOTTOM表示最下端记录

3 SKIP 上移或者下移记录指针 SKIP [N]N正数表示下移记录指针,负数表示上移。 设当前记录指针是5SKIP 3 执行命令后记录指针是8SKIP -3 执行命令后记录指针是2

4 DISPLAY 显示记录 DISPLAY [范围] [FOR 条件] [字段列表]注此命令参数[范围]缺省表示当前记录

5 LIST 显示记录 LIST [范围] [FOR 条件] [字段列表]注此命令参数[范围]缺省表示所有记录(ALL)

6 BROWSE 显示、修改记录 BROWSE [FOR 条件] [FIELDS 字段列表]注:缺省 [FIELDS 字段列表]将显示所有的字段 显示1980年以后出生的学号、姓名Browse for 出生年月>={80/01/01} fields 学号,姓名

7 EDIT/CHANGE 修改记录

8 REPLACE WITH 批量替换 REPLACE [范围] [字段1 WITH 表达式1][,……]可以有多个替换,多个替换中间须逗号 计算每位同学的总分,总分等于语文+数学+英语Replace all 总分 with 语文+数学+英语 把每位同学的总分加10分replace all 总分 with 总分+10

9 APPEND 添加记录到数据表末尾 注:增加的记录在数据库的后面

10 INSERT 插入记录 三种用法

INSERT

在当前记录后插入一个记录INSERT BEFORE 在当前记录前插入一个记录INSERT BLANK

在当前记录后插入一个空白记录

11 DELETE 为记录加删除标记(逻辑删除) DELETE [范围] [FOR 条件] 参数[范围]有四种表现形式:(以下命令类似)1、“ALL”表示所有记录2、“RECORD n”表示第n个记录3、“NEXT n”表示从当前记录开始n个记录4、“REST”表示从当前记录开始到最后一个记录。 逻辑删除第3个记录Delete Record 3逻辑删除当前记录开始3个记录 Delete Next 3 逻辑删除数学>90分以上Delete for 数学>90

12 PACK 永久删除加有删除标记的记录

13 RECALL 去除记录的删除标记 RECALL [范围] [FOR 条件]

14 ZAP 永久性删除表中所有记录

15 COUNT 统计表的记录数 COUNT [FOR 条件][TO 内存变量] 统计语文不及格的人数Count for 语文<60 to X

16 AVERAGE 求平均值 AVERAGE [字段列表] [TO 内存变量][FOR条件] 分别求男生的数学和语文的平均分并赋给变量sx和ywaverage数学,语文 to sx,yw for 性别=’男’sx,yw 显示变量sx和yw的值

117 SUM 对表中的数值型记录求和 SUM [字段列表] [TO 内存变量][FOR条件] 分别求全班语文、数学成绩的总和并赋给变量yw,sx Sum 语文,数学 to yw,sx

18 SORT 对当前表排序到新的数据表 SORT [TO 新数据库文件名] [ON 字段 排序方式]注:排序方式有两种:/A和/D分别表示升序和降序,/A可以省略。 把当前打开数据库按总分从大到小排序到新数据库cj1dbf。Sort to cj1dbf on 总分/D

19 LOCATE 顺序查找指定条件第一个记录 LOCATE [范围] [FOR 条件] 在当前记录后面的记录中找化学超过90分的记录Locate REST for 化学>90

20 CONTINUE 继续查找符合条件的记录 命令必须在执行LOCATE后使用,如果找不到满足记录状态栏将显示“End

of locate

scope”

21 INDEX 建立索引文件 INDEX [ON 字段] [TO 索引文件名]注索引文件是按索引字段升序进行排序 打开数据库chengjidbf,并建立以字段“学号”索引文件xhidxUse chengjiIndex on 学号 to xhidx

22 SET INDEX TO 打开索引文件 SET INDEX TO[索引文件名] 设已经打数据库chengjidbf,现要打开索引文件xhidxSet index to xhidx

23 SEEK 查找与索引关键字值匹配记录 SEEK [表达式] 设已对数据库“学号”字段进行索引并打开索引文件Seek ‘10001’ 查找学号是10001的记录

24 CREATE 建立新的数据表 CREATE [数据库文件名] CREATE chengjidbf

25 USE 打开或关闭数据库 三种用法

USE

关闭当前打开的数据库USE

[数据库文件名]

打开数据库USE [数据库文件名] [INDEX 索引文件名]打开数据库同时打开索引文件

26 COPY STRUCTURE TO 复制一个结构相同的空表 COPY STRUCTURE TO[新的数据库文件名]注文件名的扩展名dbf可省略,以下命令类似。 Copy structure to cj12dbfCopy structure to cj12

27 LIST STRUCTURE 显示数据库结构

28 MODIFY STRUCTURE 修改数据库结构

29 COPY TO 从当前表的内容复制到新表 COPY TO [新的数据库文件名] Copy to cj13dbf

30 CLEAR 清除FOXPRO显示区

31 DO 运行程序文件 DO [程序文件名] 运行FOXPRO默认路径下的程序文件“xs1prg”Do xs1prg

32 MODIFY COMMAND 编辑或建立程序文件 MODIFY COMMAND [程序文件名] MODIFY COMMAND xs1prg

33 QUIT 退出FoxPro

34 SET DEFAULT TO 设置FOXPRO默认路径 SET DEFAULT TO [路径]运行此命令后,数据库文件名前无需[路径] 把FOXPRO默认路径设置为D盘的“20040101”文件夹 Set default to D:\20040101

sqlserver中的查询语句(select top 50 from userinfo)和oracle中查询语句(select from userinfo where rownum<51)是否可以这样翻译过来

是的

再不牵扯到排序的时候完全等同。如楼上所言,如果有ORDER BY就有次序先后之分了。

ORACLE rownum是对所有数据的物理排序,

就是SELECT FROM TAB里面,其优先级高于order by。所以如果有select from tab order by xxx where rownum < xxx你永远得不到正确结果,只能

SELECT FROM (SELECT from tab ORDER BY xxxx) t where rownum <xxx

SQL Server top是有序排序,是top始终只针对最后的结果集,也就是最后一个 *** 作结果。

优先级低于ORDER BY

以上就是关于SQL数据库常用命令及语法举例全部的内容,包括:SQL数据库常用命令及语法举例、数据库常用命令解析、数据库问题,sqlserver top和oracle的rownum有什么不同呢下面语句是否可以相互转换等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10220002.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存