中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 数据库开发 > 数据库综合
学习 SQL 文档
作者:未知 时间:2004-03-03 12:12 出处:Blog 责编:chinaitpower
              摘要:暂无
数据库:  SQL Sever 2000
    注意:  
    如果你将SQL Sever配置为使用完整安全或混合安全,那么你可以使用可信连接。如果你使用标准安全,你则需要提供用户 帐号 和密码。
库名:   pubs (包含一个虚拟的出版商使用的各个表;安装好就有的,本文例子就用此表讲解)
调试工具:  SQL 查询分析器 (允许执行交互的SQL查询,在把查询语句写进程序之前进行测试是非常有用的。)
选库 :   在查询窗口顶部的 DB下拉框中选择数据库pubs,这样你就选择了数据库。
1          例子
1.1        记录查询 ( 附 :有编号)
1.1.1    简单SELECT查询语句
1.1.1.1  描述:
  SELECT 字段 1, 字段 2, …… FROM 表 [WHERE 条件]
1.1.1.2  SQL语句:
" SELECT  au_lname,  phone  FROM  authors
" SELECT  *  FROM  authors WHERE  au_lname ='Ringer'
1.1.1.3  结果:
1.1.1.4   注意:
1.1.2    操作多个表
1.1.2.1 描述:
1.1.2.2 Sql 语句
" SELECT au_lname ,title   FROM   authors, titles
" SELECT title,pub_name FROM titles,publishers WHERE titles.pub_id=publishers.pub_id
1.1.2.3 结果:
1.1.2.4 注意:
1.1.3   操作字段
1.1.3.1 描述:
1.1.3.2 Sql 语句
" SELECT   phone  as  '电话号码'  FROM authors  WHERE au_lname ='Ringer'
" SELECT   phone  '电话号码'  FROM authors  WHERE au_lname ='Ringer'
" SELECT   price * 2 FROM titles
" SELECT   price   "Original price", price * 2  "New price" FROM   titles
1.1.3.3 结果:
1.1.3.4 注意:
  你可以使用大多数标准的数学运算符来操作字段值,如加(+),减(-),乘(*)和除(/)。
  你也可以一次对多个字段进行运算.
1.1.4   排序查询结果
1.1.4.1 描述:
1.1.4.2 Sql 语句
" SELECT au_lname FROM   authors   ORDER   BY   au_lname
" SELECT au_lname ,au_fname FROM authors ORDER BY au_lname ,au_fname
" SELECT au_lname,au_fname FROM authors ORDER BY au_lname ,au_fname DESC
1.1.4.3 结果:
1.1.4.4 注意:
    警告:
    不是特别需要时,不要对查询结果进行排序,因为服务器完成这项工作要费些力气。这意味着带有ORDER BY 子句的SELECT语句执行起来比一般的SELECT语句花的时间长。
1.1.5   取出互不相同的记录
1.1.5.1 描述:
1.1.5.2 Sql 语句
" SELECT DISTINCT au_lname FROM authors  WHERE au_lname = 'Ringer'
1.1.5.3 结果:
1.1.5.4 注意:
    警告:
    如同ORDER BY子句一样,强制服务器返回互不相同的值也会增加运行开销。福气不得不花费一些时间来完成这项工作。因此,不是必须的时候不要使用关键字DISTINCT。
1.1.6   集合函数
1.1.6.1 描述:
? 可以统计记录数目,平均值,最小值,最大值,或者求和。
1.1.6.2 Sql 语句
" SELECT AVG( lowqty )  'the_average' FROM discounts
" SELECT COUNT( au_lname ) FROM authors WHERE au_lname= 'Ringer'
" SELECT COUNT( DISTINCT au_lname ) FROM authors WHERE au_lname= 'Ringer'
" SELECT COUNT( * ) FROM authors WHERE au_lname= 'Ringer'
" SELECT SUM( min_lvl ) FROM jobs
" SELECT MAX( min_lvl ) FROM jobs
" SELECT MIN( min_lvl ) FROM jobs
1.1.6.3 结果:
1.1.6.4 注意:
1.1.7   通过匹配来取出数据
1.1.7.1 描述:
? 百分号是通配符的例子之一。它代表 0个或多个字符。
? 中括号([])用来匹配处在指定范围内的单个字符。
? '[ABC]%'任何一个其名字以这些字符中的任一个开头记录都将被返回。
? 脱字符( ^)来排除特定的字符。
? 通过使用下划线字符( _),你可以匹配任何单个字符。
1.1.7.2 Sql 语句
" SELECT royalty  FROM titles WHERE royalty >= 10   AND   royalty <= 12
" SELECT royalty  FROM titles WHERE royalty BETWEEN 10 AND 12
" SELECT royalty  FROM titles WHERE royalty NOT BETWEEN 10 AND 12
" SELECT royalty  FROM titles WHERE royalty = 10   OR   royalty = 12
" SELECT royalty  FROM titles WHERE royalty IN (10,12)
" SELECT type  FROM titles WHERE type LIKE '%popular_comp%'
" SELECT type  FROM titles WHERE type LIKE '[A-M ]%'
" SELECT type  FROM titles WHERE type LIKE '[ABC]%'
" SELECT type  FROM titles WHERE type LIKE '[a-fm]%'
" SELECT type  FROM titles WHERE type LIKE '[^(a-fmt)]%'
1.1.7.3 结果:
1.1.7.4 注意:
注意:
如果你想匹配百分号或下划线字符本身,你需要把它们括在方括号中。如果你想匹配连字符 (-),应把它指定为方括号中的第一个字符。如果你想匹配方括号,应把它们也括在方括号中。例如,下面的语句返回所有其描述中包含百分号的站点:  
1.1.8   转换数据
1.1.8.1 描述:
? SQL Sever 把大部分数值从一种类型转换为另一种类型。例如,要比较SMALLINT型和INT型数据的大小,你不需要进行显式的类型转换。SQL Sever会为你完成这项工作。
? 当想在字符型数据和其它类型的数据之间进行转换时,需要自己进行转换操作。
? 函数 CONVERT( )
1.1.8.2 Sql 语句
" SELECT CONVERT( CHAR(8),price) + '$' as '钱' FROM titles
1.1.8.3 结果:
1.1.8.4 注意:
  函数 CONVERT( ) 带有两个变量。第一个变量指定了数据类型和长度。第二个变量指定了要进行转换的字段。
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有