资源描述:
《数据库查询例题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、简单查询例题【例1】在zgda表中,检索所有字段。SELECT*FROMzgda【例2】在zggz表中,检索实发工资大于2000元的记录。SELECT编号,姓名,实发工资FROMzggzWHERE实发工资>2000【例3】在zgda表中,检索所有职称名称。SELECTDISTINCT职称FROMzgda【例4】在zgda表中,检索职称是助教的记录。SELECT编号,姓名,职称FROMzgdaWHERE职称='助教'【例5】在zggz表中,检索实发工资大于1000小于1800元的记录。SELECT编号,姓名
2、,实发工资FROMzggzWHERE实发工资>1000AND实发工资<1800【例6】检索出工资在1220元到1240元范围内的职工信息。这个查询的条件值是在什么范围之内,显然可以用BETWEEN…AND…,为此有如下查询语句:SELECT*FROM职工WHERE工资BETWEEN1220AND1240这里BETWEEN…AND…意思是在“…和…之间”,这个查询的条件等价于:(工资>=1220)AND(工资<=1240)显然使用BETWEEN…AND…表达条件更清晰、更简洁。假如找出工资不在1220元和1
3、240元之间的全部职工信息,可以用命令:SELECT*FROM职工WHERE工资NOTBETWEEN1220AND1240【例7】在zgda表中,检索所有姓陈和姜的记录。SELECT编号,姓名FROMzgdaWHERE姓名IN("陈","姜")【例8】在供应商表中,检索出全部公司的信息,不要工厂或其他供应商的信息。这是一个字符串匹配的查询,显然应该使用LIKE运算符:SELECT*FROM供应商WHERE供应商名LIKE"%公司"这里的LIKE是字符串匹配运算符,通配符“%”表示0个或多个字符,另外还有一
4、个通配符“_”表示一个字符。【例9】在zgda表中,检索所有姓刘的记录。SELECT编号,姓名FROMzgdaWHERE姓名LIKE"刘%"【例10】在zgda表中,检索性别是男的记录。SELECT编号,姓名,性别FROMzgdaWHERE性别LIKE"男"可以使用NOT运算符来设计否定条件,检索性别不是男的记录。SELECT编号,姓名,性别FROMzgdaWHERE性别NOTLIKE"男"【例11】在zgda表和zggz表中,检索职称是讲师,并且实发工资大于1900元的记录SELECTzgda.编号,z
5、gda.姓名,zgda.职称,zggz.实发工资FROMzgda,zggzWHERE(职称="讲师")AND(实发工资>1900)AND(zgda.编号=zggz.编号)//编号是联接的条件【例12】在仓库表和职工表中,检索哪些城市至少有一个仓库的职工工资为1250元SELECT城市FROM仓库WHERE仓库号IN(SELECT仓库号FROM职工WHERE工资=1250)【例13】在仓库表和职工表中,检索所有职工的工资都多于为1210元的仓库信息。SELECT*FROM仓库WHERE仓库号NOTIN(SE
6、LECT仓库号FROM职工WHERE工资<=1210)【例14】检索出和职工E4挣同样工资的所有职工。SELECT职工号FROM职工WHERE工资=(SELECT工资FROM职工WHERE职工号="E4")【例15】在职工表中,按职工的工资值升序检索出全部职工的信息。SELECT*FROM职工ORDERBY工资这里ORDERBY是排序子句,如果需要将结果按降序排列,只要加上DESC。SELECT*FROM职工ORDERBY工资DESC【例16】在职工表中,先按仓库号排序,再按工资排序,并输出全部职工信息。
7、SELECT*FROM职工ORDERBY仓库号,工资这里一个按多列排序的例子。说明:ORDERBY是对最终的查询结果进行排序,不可以在子查询中使用该短语。【例17】在供应商表中,找出供应商所在地的数目。SELECTCOUNT(DISTINCT地址)FROM供应商说明,除非对关系中的元组个数进行计数,一般应用COUNT函数应该使用DISTINCT。例如:SELECTCOUNT(*)FROM供应商将给出供应商关系中的记录数。【例18】在职工表中,求支付的工资总数。SELECTSUM(工资)FROM职工这个结果
8、是职工关系中的工资值的总和,它并不管是否有重复值。这时若使用命令:SELECTSUM(DISTINCT工资)FROM职工将得出错误的结果,原因是DISTINCT命令去掉重复值。【例19】在职工表和仓库表中,求北京和上海的仓库职工的工资总和。SELECTSUM(工资)FROM职工WHERE仓库号IN(SELECT仓库号FROM仓库WHERE城市="北京"OR城市="上海")【例20】在仓库表和职工表中,求所有职工的工资都多于12