摘要:
--逻辑查询处理的步骤序号(8) SELECT (9) DISTINCT (11) <TOP_SPECIFICATION> <SELECT_LIST>(1) FROM <LEFT_TABLE>(3) <JOIN_TYPE> JOIN<RIGHT_TABLE>(2) ON <JOIN_CONDITION>(4) WHERE <WHERE_CONDITION>(5) GROUP BY <GROUP_BY_LIST>(6) WITH {CUBE | ROLLUP}(7) HAVING <HAVING 阅读全文
摘要:
1、应用程序中,保证在实现功能的基础上,尽量减少对数据库的访问次数;通过搜索参数,尽量减少对表的访问行数,最小化结果集,从而减轻网络负担;能够分开的操作尽量分开处理,提高每次的响应速度;在数据窗口使用SQL时,尽量把使用的索引放在选择的首列;算法的结构尽量简单;在查询时,不要过多地使用通配符如SELECT * FROM T1语句,要用到几列就选择几列如:SELECT COL1,COL2 FROMT1;在可能的情况下尽量限制尽量结果集行数如:SELECT TOP 300COL1,COL2,COL3 FROM T1,因为某些情况下用户是不需要那么多的数据的。不要在应用中使用数据库游标,游标是非常有 阅读全文
摘要:
--备份数据库BACKUP DATABASE test to disk = 'D:\test.bak' --完整备份go--数据库还原--1、附加数据库create database hotelbook_Dataon primary(filename='D:\shujuku\hotelbook_Data.mdf')for attach--2、还原用BACKUP备份的数据库RESTORE DATABASE TESTDBFROM DISK = 'D:\test.bak'WITH MOVE 'TEST' TO 'D:\SQL\t 阅读全文
摘要:
/*=======================================Description: 用SQL实现笛卡尔积Author: CCdate: 2011.11.03=======================================*/USE TestGOSELECT * FROM l; --如下图lSELECT * FROM m; --如下图m--交叉连接实现,lmSELECT * FROM l CROSS JOIN m;l表lid name----------- --------------------101 北京102 太原101 N... 阅读全文
摘要:
left join 是left outer join的简写,left join默认是outer属性的。Inner JoinInner Join 逻辑运算符返回满足第一个(顶端)输入与第二个(底端)输入联接的每一行。这个和用select查询多表是一样的效果,所以很少用到;outer join则会返回每个满足第一个(顶端)输入与第二个(底端)输入的联接的行。它还返回任何在第二个输入中没有匹配行的第一个输入中的行。关键就是后面那句,返回的多一些。所以通常意义上的left join就是left outer join 阅读全文
摘要:
--先删除主键(PK_TABLENAME要替换成主键名) alter table tablename drop CONSTRAINT PK_TABLENAME go --再增加主键(PK_TABLENAME要替换成主键名) alter table tablename add CONSTRAINT PK_TABLENAME PRIMARY KEY (键名,键名) go--修改表名exec sp_rename 'oldname','newname';go--重新命名列名EXEC sp_rename 'table1.oldname','newn 阅读全文
摘要:
SQL语句可分为多种类别,如下所述。●DQL(数据查询语言),用来从数据库中获取数据和对数据进行排序。●DML(数据库操纵语言),用来插入、删除和修改数据库中的数据。●DDL(数据定义语言),包括定义数据库、基本表、视图和索引。●DCL(数据控制语言),用来管理对数据库和数据库对象的权限。●CCL(通用命令语言),用来在数据库中进行高效率的搜索。它可以用来生成联机库等需要在很短的时间内筛选大量记录的应用。DQL:Data Query Language SELECT 数据查询语言select具体用法 SELECT select_list [ INTO new_table ] FROM... 阅读全文
摘要:
update 表名 SET 更新字段 FROM 更新表名(多个)WHERE 更新条件作用:如果想要用一个表的字段也更新另一张表时,可以用。例子:表Llid lname101 北京102 太原101 NULL102 NULL表M:matid lty lid 10011 1 101 20012 1 102 10011 1 102 10011 1 102现在来为M表增加一列ALTER TABLE M ADD MNAME VARCHAR(20)现在M表的结构为:matid lty lid mname10011 1 101 NULL20012 1 102 NULL10011 1 10... 阅读全文
摘要:
--显示数据库所有的用户表USE Testselect * from sysobjects where type= 'U 'GO参数:列名数据类型说明namesysname对象名idint对象标识号xtypechar(2)对象类型。可以是以下对象类型之一:AF = 聚合函数 (CLR)C = CHECK 约束D = 默认值或 DEFAULT 约束F = FOREIGN KEY 约束L = 日志FN = 标量函数FS = 程序集 (CLR) 标量函数FT = 程序集 (CLR) 表值函数IF = 内联表函数IT = 内部表P = 存储过程PC = 程序集 (CLR) 存储过程.. 阅读全文
摘要:
use TestGO--求1-100之间可以被7整除的数的和的代码--在SQL中所有的赋值得加SETDECLARE @x INT, @sum INTSET @x=1SET @sum=0WHILE @x<101BEGIN if @x%7=0 BEGIN SET @sum = @sum+ @x END SET @x=@x+1END SELECT @x今天学写的,哈哈。。 阅读全文