无论是B/C 架构还是B/S架构的软件或系统,都离不开数据库的存储,同时也少不数据的增册改查操作,数据库的查询语句好与坏也决定着程序是否足够优化的标准之一,在此南昌网络公司百恒网络数据库开发工程师先向大家介绍一些基本的数据查询和设置操作,以后会进一步深学分享一些优秀的查询语句以便大家在工作上用得上,顺便说下,SQL> 这是本地操作的提示符,实际应用时是不要此标签 。
1.SQL局部变量的定义和使用
创建一个@myvar变量,然后将一个字符串值放在变量中,输出@myvar变量的值。
DECLARE @myvar char(10)
SELECT @myvar = '变量测试'
SELECT @myvar
GO
2.通过查询给T-SQL变量赋值
USE test
GO
DECLARE @rows int
SET @rows = (SELECT COUNT(*) FROM sc)
SQL全局变量的定义和使用
3.显示到当前日期和时间为止试图登录SQL Server的次数。
SELECT GETDATE()AS '当前时间',@@CONNECTIONS AS '登录次数'
4.SQL*Plus命令绑定变量操作
VARIABLE job1 CHAR
EXECUTE :job1 :='CLERK'
SELECT * FROM EMP WHERE JOB=:JOB1;
PRINT job1
5.显示行和页变量的大小
SQL> SHOW linesize pagesize
6.查看回收站
使用SHOW recyclebin命令可查看回收站的内容,一般来说,此项操作是在执行清除(purge)回收站或闪回(flashback)恢复之前执行的。
SQL>SHOW recyclebin
7.设置每行显示80字符,每页显示26行
SQL> SET linesize 80 pagesize 26
8.设置数据自动提交
SQL> SET AUTOCOMMIT on
SQL> SHOW AUTOCOMMIT
autocommit IMMEDIATE
9.设置“&”字符的输入
在SQL*Plus默认环境里会把'&字符'当成变量来处理,有些时候也需要在SQL>的符号下输入'&字符',只需要改变SQL*Plus下一个环境变量define即可。
查看当前SQL*Plus的define状态:
SQL> SHOW define;
把默认的&绑定变量的功能取消,可以把'&字符'当成普通字符处理。
SQL> SET define off;
打开&绑定变量的功能,&后面的字符串当做变量使用。
SQL> SET define on;
10.设置列之间的分隔符
SQL> SHOW COLSEP
colsep " "
SQL> SET COLSEP |
SQL> SHOW COLSEP
colsep "|"
SQL>
11.设置是否显示列标题
SQL> SET heading off
SQL> show heading
heading OFF
SQL> SET heading on
12.设置命令提示符
SQL>SET sqlprompt SQL*PLUS>
SQL*PLUS>
13.设置系统时间显示
SQL*PLUS>SET time on
10:36:35 SQL*PLUS>
14.把设置好的SQL环境变量值全部保存在一个脚本文件里
10:36:35 SQL*PLUS>STORE SET e:sqlsqlset.sql
Created file e:sqlsqlset.sql
15.按工资和岗位条件查找雇员信息
ACCEPT job1 CHAR PROMPT '请输入要统计的工作职位名称:' HIDE
ACCEPT salary NUMBER PROMPT '请输入要统计的最低工资数:'
PROMPT 按任一键继续
PAUSE
SELECT * FROM BaiHeng_db WHERE job LIKE '&job1'+'%' AND sal>=&salary
16.数据表复制
①使用using子句指定一个查询,将其查询结果数据复制到本地数据库的当前模式下BaiHeng_dbloyee表中。例如:
copy from hr/hrd@rensh replace BaiHeng_dbloyee using SELECT last_name,salary from BaiHeng_db_details_view where department_id=30
②使用create命令从一个远程数据库复制数据到本地数据库。
copy from hr/@bostondb create BaiHeng_dbcopy using SELECT*from hr
③为其他用户复制数据。
copy from hr/hr@dbora create job using SELECT*from renbs.jobs
④以用户hr的身份连接到数据库dbora,将renbs模式的jobs表复制到本地数据库。
在同一个数据库中可将一个模式的表复制到另一个模式中。同样必须指定用户口令和数据库服务名。
copy from hr/password@mydatabase insert BaiHeng_dbloyee_copy2 using SELECT*from BaiHeng_dbloyee_copy
⑤在同一个远程数据库中复制表,必须使关键字from和to中包含相同用户名和数据库服务名。
copy from hr/password@daliandb to hr/password@daliandb insert BaiHeng_dbloyee_copy2-
using SELECT*from BaiHeng_dbloyee_copy
17.Oracle的FORMAT用法
SQL> COLUMN DEPTNO JUSTIFY CENTER FORMAT A15;
SQL> SELECT * FROM dept;
DEPTNO DNAME LOC
------ --------- --------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
18.Oracle的BREAK用法
SELECT * FROM BaiHeng_db WHERE SAL>=1500 ORDER BY deptno
19.Oracle的COMPUTE用法
按部门统计工资情况并生成报表:
SQL>BREAK ON REPORT
SQL>COMPUTE sum LABEL小计:OF sal ON REPORT;
本文仅限内部技术人员学习交流,不得作于其他商业用途.希望此文对广技人员有所帮助。原创文章出自:南昌网站建设公司-百恒网络 http: //www.jxbh.cn 如转载请注明出处!