详解SQL命令大全--中文翻译(2)_Mssql数据库教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:揭秘SQL Server2000安全设置全攻略
Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQLServer服务器系统和数据库的安全进行全面地管理。按照本文介绍的步骤,你可以为SQLServer2000构造出一个灵活的、可管理的安全策略,而且它的安全性经得起考验。 一、验证方法选择 本文对


--WAITFOR 
--例 等待1 小时2 分零3 秒后才执行SELECT 语句 
waitfor delay ’01:02:03’ 
select * from employee 
--例 等到晚上11 点零8 分后才执行SELECT 语句 
waitfor time ’23:08:00’ 
select * from employee 

***SELECT*** 
select *(列名) from table_name(表名) where column_name operator value 
ex:(宿主) 
select * from stock_information where stockid = str(nid) 
stockname = ’str_name’ 
stockname like ’% find this %’ 
stockname like ’[a-zA-Z]%’ --------- ([]指定值的范围) 
stockname like ’[^F-M]%’ --------- (^排除指定范围) 
--------- 只能在使用like关键字的where子句中使用通配符) 
or stockpath = ’stock_path’ 
or stocknumber < 1000 
and stockindex = 24 
not stocksex = ’man’ 
stocknumber between 20 and 100 
stocknumber in(10,20,30) 
order by stockid desc(asc) --------- 排序,desc-降序,asc-升序 
order by 1,2 --------- by列号 
stockname = (select stockname from stock_information where stockid = 4) 
--------- 子查询 
--------- 除非能确保内层select只返回一个行的值, 
--------- 否则应在外层where子句中用一个in限定符 
select distinct column_name form table_name --------- distinct指定检索独有的列值,不重复 
select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name 
select stockname , "stocknumber" = count(*) from table_name group by stockname 
--------- group by 将表按行分组,指定列中有相同的值 
having count(*) = 2 --------- having选定指定的组 
select * 
from table1, table2 
where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示 
table1.id =* table2.id -------- 右外部连接 
select stockname from table1 
union [all] ----- union合并查询结果集,all-保留重复行 
select stockname from table2 
***insert*** 
insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx") 
value (select Stockname , Stocknumber from Stock_table2)---value为select语句 
***update*** 
update table_name set Stockname = "xxx" [where Stockid = 3] 
Stockname = default 
Stockname = null 
Stocknumber = Stockname + 4 
***delete*** 
delete from table_name where Stockid = 3 
truncate table_name ----------- 删除表中所有行,仍保持表的完整性 
drop table table_name --------------- 完全删除表 
***alter table*** --- 修改数据库表结构 
alter table database.owner.table_name add column_name char(2) null ..... 
sp_help table_name ---- 显示表已有特征 
create table table_name (name char(20), age smallint, lname varchar(30)) 
insert into table_name select ......... ----- 实现删除列的方法(创建新表) 
alter table table_name drop constraint Stockname_default ---- 删除Stockname的default约束 

分享:浅析SQL的排序,分组,统计常用语句
1.使用排序使数据有序 通常,你的所有数据真正需要的仅仅是按某种顺序排列。SQL的ORDERBY语句可以以字母或数字顺序组织数据。因此,相似的值按组排序在一起。然而,这个分组时排序的结果,并不是真的分组。ORDERBY显示每条记录而分组可能代表很多记录。 2.进

来源:模板无忧//所属分类:Mssql数据库教程/更新时间:2010-01-31
相关Mssql数据库教程