数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
学习 SQL 文档

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

数据库:  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( ) 带有两个变量。第一个变量指定了数据类型和长度。第二个变量指定了要进行转换的字段。



相关文章

相关软件