这次小编在这里给大家整理了用SQL进行单表查询数据库教程,本文共4篇,供大家阅读参考。本文原稿由网友“huangxinyou2008”提供。
篇1:用SQL进行单表查询数据库教程
单表查询是相对多表查询而言的,指从一个数据表中查询数据,
用SQL进行单表查询数据库教程
。4.2.1 查询所有的记录
在【命令编辑区】执行输入“select * from scott.emp”,然后单击【执行】按钮,出现如图4.3所示的emp数据表所有记录。
【参见光盘文件】:\\第4章\\4.2\\421.sql。
select * from 数据表,这里的“*”代表数据表中所有的字段。
4.2.2 查询所有记录的某些字段
在【命令编辑区】输入“select empno,ename,job from scott.emp”,然后单击【执行】按钮,将显示emp数据表的empno、ename和job字段,如图4.4所示。
【参见光盘文件】:\\第4章\\4.2\\422.sql。
select 字段名1, 字段名2,…… from 数据表,将显示某些特定的字段,注意这里的字段名之间的逗号是英文状态下的逗号。
4.2.3 查询某些字段不同记录
在图4.4所示的job字段中,可以发现有相同的数据,为了查询有多少种不同的job,在【命令编辑区】输入“select distinct job from scott.emp”,然后单击【执行】按钮,出现如图4.5所示的结果。
【参见光盘文件】:\\第4章\\4.2\\423.sql。
select distinct 字段名 from 数据表,这里的“distinct”保留字指在显示时去除相同的记录,与之对应的是“all”将保留相同的记录,默认为“all”。
4.2.4 单条件的查询
(1)在【命令编辑区】输入“select empno,ename,job from scott.emp where job=’MANAGER’”,然后单击【执行】按钮,出现如图4.6所示的字符型字段条件查询的结果,查询的是job为MANAGER的记录。
【参见光盘文件】:\\第4章\\4.2\\424-1.sql。
(2)在【命令编辑区】输入“select empno,ename,sal from scott.emp where sal<=2500”,然后单击【执行】按钮,出现如图4.7所示的数字型字段条件查询的结果,查询的是满足sal小于等于2500的记录。
【参见光盘文件】:\\第4章\\4.2\\424-2.sql。
where可以指定查询条件,如果是指定字符型字段查询条件,形式为字段名 运算符 '字符串';如果是指定数字型字段查询条件,形式为字段名 运算符 '字符串'。 单条件查询使用的比较运算符如表4.1所示。
【参见光盘文件】:\\第4章\\4.2\\table41.sql。
表4.1 比较运算符名称实例=(等于)select * from scott.emp where job=’MANAGER’;select * from scott.emp where sal=1100;!= (不等于)select * from scott.emp where job!=’MANAGER’;select * from scott.emp where sal!=1100;^=(不等于)select * from scott.emp where job^=’MANAGER’;select * from scott.emp where sal^=1100;(不等于)select * from scott.emp where job’MANAGER’;select * from scott.emp where sal1100;<(小于)select * from scott.emp where sal<;select * from scott.emp where job<’MANAGER’;>(大于)select * from scott.emp where sal>2000;select * from scott.emp where job>’MANAGER’;<=(小于等于)select * from scott.emp where sal<=2000;select * from scott.emp where job<=’MANAGER’;>=(大于等于)select * from scott.emp where sal>=2000;select * from scott.emp where job>=’MANAGER’;in(列表)select * from scott.emp where sal in (2000,1000,3000);select * from scott.emp where job in (’MANAGER’,’CLERK’);not in(不在列表)select * from scott.emp where sal not in (2000,1000,3000);select * from scott.emp where job not in (’MANAGER’,’CLERK’);between(介于之间)select * from scott.emp where sal between 2000 and 3000;select * from scott.emp where job between ’MANAGER’ and ’CLERK’;not between (不介于之间)select * from scott.emp where sal not between 2000 and 3000;select * from scott.emp where job not between ’MANAGER’ and ’CLERK’;like(模式匹配)select * from scott.emp where job like ’M%’;select * from scott.emp where job like ’M__’;not like (模式不匹配)select * from scott.emp where job not like ’M%’;select * from scott.emp where job not like ’M__’;Is null (是否为空)select * from scott.emp where sal is null;select * from scott.emp where job is null;is not null(是否为空)select * from scott.emp where sal is not null;select * from scott.emp where job is not null;
like和not like适合字符型字段的查询,%代表任意长度的字符串,_下划线代表一个任意的字符,
like ‘m%’ 代表m开头的任意长度的字符串,like ‘m__’ 代表m开头的长度为3的字符串。
4.2.5 组合条件的查询
(1)在【命令编辑区】输入“select empno,ename,job from scott.emp where job>=’CLERK’ and sal<=2000”,然后单击【执行】按钮,出现如图4.8所示的逻辑与组合查询的结果。
【参见光盘文件】:\\第4章\\4.2\\425-1.sql。
(2)在【命令编辑区】输入“select empno,ename,job from scott.emp where job>=’CLERK’ or sal<=2000”,然后单击【执行】按钮,出现如图4.9所示的逻辑或组合查询的结果。
【参见光盘文件】:\\第4章\\4.2\\425-2.sql。
(3)在【命令编辑区】输入“select empno,ename,job from scott.emp where not job=’CLERK’”,然后单击【执行】按钮,出现如图4.10所示的逻辑非组合查询的结果。
【参见光盘文件】:\\第4章\\4.2\\425-3.sql。
“not job=’CLERK’”等价于“job’CLERK’”。
组合条件中使用的逻辑比较符如表4.2所示。
【参见光盘文件】:\\第4章\\4.2\\table42.sql。
表4.2 逻辑比较符
名称实例and(与)select * from scott.emp where job=’MANAGER’ and sal2000;or (或)select * from scott.emp where job!=’MANAGER’ or sal2000;not(非)select * from scott.emp where not job>=’MANAGER’;4.2.6 排序查询
在【命令编辑区】输入“select empno,ename,job from scott.emp where job<=’CLERK’ order by job asc,sal desc”,然后单击【执行】按钮,出现如图4.11所示的排序查询的结果。
【参见光盘文件】:\\第4章\\4.2\\426.sql。
order by 可以指定查询结果如何排序,形式为字段名 排序关键词;asc代表升序排列,desc代表降序排列,多个排序字段之间通过逗号分割。若有where查询条件,order by要放在where语句后面。
4.2.7 分组查询
分组查询是指将查询结果按照字段分组。
(1)在【命令编辑区】输入“select empno,ename,job,sal from scott.emp group by job,empno,ename,sal having sal<=2000”,然后单击【执行】按钮,出现如图4.12所示的分组查询的结果。
【参见光盘文件】:\\第4章\\4.2\\427-1.sql。
(2)在【命令编辑区】输入“select empno,ename,job,sal from scott.emp where sal<=2000 group by job,empno,ename,sal”,然后单击【执行】按钮,出现如图4.13所示的分组查询的结果。
【参见光盘文件】:\\第4章\\4.2\\427-2.sql。
where检查每条记录是否符合条件,having是检查分组后的各组是否满足条件。having语句只能配合group by语句使用,没有group by时不能使用having,但可以使用where。
4.2.8 字段运算查询
可以利用几种基本的算术运算符来查询数据。
常见的+(加)、-(减)、*(乘)、/(除)4种算术运算都可以用来查询数据。
在【命令编辑区】输入“select empno,ename,sal,mgr,sal+mgr from scott.emp”,然后单击【执行】按钮,出现如图4.14所示的结果。
【参见光盘文件】:\\第4章\\4.2\\428.sql。
利用算术运算符仅仅适合多个数值型字段或字段与数字之间的运算。
4.2.9 变换查询显示
在【命令编辑区】输入“select empno 编号,ename 姓名,job 工作,sal 薪水 from scott.emp”,然后单击【执行】按钮,出现如图4.15所示的结果,可以将默认的字段名以设定的名称显示。
【参见光盘文件】:\\第4章\\4.2\\429.sql。
以上我们学习了对单个数据表的查询语句。将上面这些基本的实例经过组合,就可以完成基本的日常数据查询任务,接下来进一步学习多表查询。
篇2:用SQL进行函数查询数据库教程
Oracle 9i提供了很多函数可以用来辅助数据查询,
用SQL进行函数查询数据库教程
。接下来我们介绍常用的函数功能及使用方法。4.5.1 【ceil】函数
在【命令编辑区】输入“select mgr, mgr/100,ceil(mgr/100) from scott.emp;”,然后单击【执行】按钮,出现如图4.29所示的结果。
【参见光盘文件】:\\第4章\\4.5\\451.sql。
【ceil】函数用法:ceil(n),取大于扔谑值n的最小整数。
4.5.2 【floor】函数
在【命令编辑区】输入“select mgr, mgr/100,floor(mgr/100) from scott.emp;”,然后单击【执行】按钮,出现如图4.30所示的结果。
【参见光盘文件】:\\第4章\\4.5\\452.sql。
【floor】函数用法:floor(n),取小于等于数值n的最大整数。
4.5.3 【mod】函数
在【命令编辑区】输入“select mgr, mod(mgr,1000), mod(mgr,100), mod(mgr,10) from scott.emp;”,然后单击【执行】按钮,出现如图4.31所示的结果。
【参见光盘文件】:\\第4章\\4.5\\453.sql。
【mod】函数用法:mod(m,n),取m整除n后的余数。
4.5.4 【power】函数
在【命令编辑区】输入“select mgr, power(mgr,2),power(mgr,3) from scott.emp;”,然后单击【执行】按钮,出现如图4.32所示的结果。
【参见光盘文件】:\\第4章\\4.5\\454.sql。
【power】函数用法:power(m,n),取m的n次方。
4.5.5 【round】函数
在【命令编辑区】输入“select mgr, round(mgr/100,2),round(mgr/1000,2) from scott.emp;”,然后单击【执行】按钮,出现如图4.33所示的结果。
【参见光盘文件】:\\第4章\\4.5\\455.sql。
【round】函数用法:round(m,n),四舍五入,保留n位。
4.5.6 【sign】函数
在【命令编辑区】输入“select mgr, mgr-7800,sign(mgr-7800) from scott.emp;”,然后单击【执行】按钮,出现如图4.34所示的结果,
【参见光盘文件】:\\第4章\\4.5\\456.sql。
【sign】函数用法:sign(n)。n>0,取1;n=0,取0;n<0,取-1。
4.5.7 【avg】函数
在【命令编辑区】输入“select avg(mgr)平均薪水 from scott.emp;”,然后单击【执行】按钮,出现如图4.35所示的结果。
【参见光盘文件】:\\第4章\\4.5\\457.sql。
【avg】函数用法:avg(字段名),求平均值。要求字段为数值型。
4.5.8 【count】函数
(1)在【命令编辑区】输入“select count(*) 记录总数 from scott.emp;”,然后单击【执行】按钮,出现如图4.36所示的结果。
【参见光盘文件】:\\第4章\\4.5\\458-1.sql。
(2)在【命令编辑区】输入“select count(distinct job ) 工作类别总数 from scott.emp;”,然后单击【执行】按钮,出现如图4.37所示的结果。
【参见光盘文件】:\\第4章\\4.5\\458-2.sql。
【count】函数用法:count(字段名)或count(*),统计总数。
4.5.9 【min】函数
在【命令编辑区】输入“select min(sal) 最少薪水 from scott.emp;”,然后单击【执行】按钮,出现如图4.38所示的结果。
【参见光盘文件】:\\第4章\\4.5\\459.sql。
【min】函数用法:min(字段名),计算数值型字段最小数。
4.5.10 【max】函数
在【命令编辑区】输入“select max(sal) 最高薪水 from scott.emp;”,然后单击【执行】按钮,出现如图4.39所示的结果。
【参见光盘文件】:\\第4章\\4.5\\4510.sql。
【max】函数用法:max(字段名),计算数值型字段最大数。
4.5.11 【sum】函数
在【命令编辑区】输入“select sum(sal) 薪水总和 from scott.emp;”,然后单击【执行】按钮,出现如图4.40所示的结果。
【参见光盘文件】:\\第4章\\4.5\\4511.sql。
【sum】函数用法:sum(字段名),计算数值型字段总和。
通过上面4类查询实例的学习,读者可以举一反三,灵活运用。用SQL进行数据的查询就介绍到这里,下面学习如何录入数据。
篇3:用gcc批量建mysql库表数据库教程
file 1
my.c
//--------------------------------------------------------
// MySQL Database Create 1/13/. Netkiller Chen
//--------------------------------------------------------
#include
#include
main
{
char host[16]; //mysql host address.
char sid[15]; //root user name.
char pwd[15]; //root password.
/* char *table_file[]={
“gsxx”,
“bcxx”,
“fgxx”,
“hmbxx”,
“ltxx”,
NULL
};*/
//char *mysql;
char mydatabase[256];
char mysqltable[256];
int i;
int max_table_num;
int db,status;
i=0;
max_table_num=4; //max_table_num
system(“clear”);
showme();printf(“\\n”);
printf(“MySQL host:”);scanf(“%s”,host);
printf(“Root user:”);scanf(“%s”,sid);
printf(“Password:”);scanf(“%s”,pwd);
printf(“Loading........\\n\\n”);
while(table_file[i]){
sprintf(mydatabase,“echo \\”create database %s\\“|mysql -h%s -u%s -p%s”,table_file[i],host,sid,pwd);
sprintf(mysqltable,“mysql -h%s -u%s -p%s %s<%s.sql”,host,sid,pwd,table_file[i],table_file[i]);
db=system(mydatabase);
status=system(mysqltable);
// printf(“%s\\n%s”,mydatabase,mysqltable);
printf(table_file[i]);
//printf(“%d”,status);
if(db==0 && status==0){
printf(“\\t\\t\\tInstall [ OK ]\\n”);
}else{
printf(“\\t\\t\\tInstall [ :( ]\\n”);
}
i++;
}
address();
}
//------------------- Function ------------------
showme()
{
printf(“-------------------------------------------------------------------\\n”);
printf(“\\tI am Netkiller Chen.\\n”);
printf(“\\tI am a programmer and system&net manager.\\n”);
printf(“\\tI am glad to be friend with you!\\n”);
printf(“-------------------------------------------------------------------\\n”);
}
address()
{
printf(“\\n----------------------------------\\n”);
printf(“|\\tnewtech@sina.com |\\n”);
printf(“|\\tOICQ:13721218 |\\n”);
printf(“|\\t 1/13/2001 |\\n”);
printf(“----------------------------------\\n”);
}
file 2
table.h
char *table_file[]={
“alxx”,
“bcxx”,
“fycx”,
“fyxwxx”,
“fyzxxx”,
“hwzx”,
“lhzxxx”,
“xxdexx”,
“xxdsxx”,
“xxfgxx”,
“xxglxx”,
“xxgsxx”,
“xxhmbxx”,
“xxhtxx”,
“xxjbxx”,
“xxltxx”,
“xxzwxx”,
“xxzx”,
NULL
};
些程序可以方便建表,
用gcc批量建mysql库表数据库教程
,
。。有什么不明白与我联系。
程序随算不上什么。。。。。但也解决了一些批量建表的问提。
这个程序可以做为gcc刚入门爱好的参考,因为这个程序象hello world一样间简单。而且很全包括了指针,数组,文件包含,NULL
用户方法两个文件置于。/root/mygcc/下,将预建库mysql语句文件,文件名命名为xxxx.sql同上然后
#gcc my.c -o my
#my
即可。。。不用我在说了吧?
篇4:在查询分析器中,用快捷键取得字段的列表。数据库教程
查询分析|用快捷键
ALTER procedure sp_getfields
@tablename varchar(100)
as
declare tmpCursor cursor for
select name from syscolumns where id = Object_ID(@tablename)
open tmpCursor
declare @fieldname varchar(50)
declare @sqlstr1 varchar(250)
declare @sqlstr2 varchar(250)
set @fieldname = ''
set @sqlstr1 = ''
set @sqlstr2 = ''
fetch next from tmpCursor into @fieldname
while @@fetch_status = 0
begin
if len(@sqlstr1) < 250 - len(@fieldname)
set @sqlstr1 = @sqlstr1 + @fieldname + ','
else
set @sqlstr2 = @sqlstr2 + @fieldname + ','
fetch next from tmpCursor into @fieldname
end
close tmpCursor
Deallocate tmpCursor
if @sqlstr2 = ''
set @sqlstr1 = left(@sqlstr1, len(@sqlstr1) -1)
else
set @sqlstr2 = left(@sqlstr2, len(@sqlstr2) -1)
select @sqlstr1
if @sqlstr2 ''
select @sqlstr2
加了快捷键后,在查询分析器中,选中一个表名,按相应的快捷键,酷吧,
在查询分析器中,用快捷键取得字段的列表,
电脑资料
《在查询分析器中,用快捷键取得字段的列表。数据库教程》()。数据库教程。
- 一些有用的查询语句(关于系统表的使用)数据库2023-03-15
- Oracle 9i 约束条件数据库教程2022-12-17
- 全检索的应用数据库教程2023-04-20
- 右外连接数据库教程2022-12-11
- sql数据库备份和恢复常用操作2025-06-03
- 解决Oracle被锁定的妙招数据库教程2023-09-24
- 远程管理sqlserver的注册方法数据库教程2022-12-25
- 逻辑备份与恢复实战数据库教程2023-02-10
- oracle8i在redhat7.1~7.3下的安装数据库教程2024-04-19
- 说一说 Oracle库的Hang数据库教程2023-03-15