`

SQL语句大全(转链接)

阅读更多
http://www.cnblogs.com/yubinfeng/archive/2010/11/02/1867386.html
引用

1.索引:
查看一张表上的所有索引 :show index from 表名
建立索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname
2.主键:
添加主键: Alter table tabname add primary key(col)
删除主键: Alter table tabname drop primary key(col)
3.select的标准格式:
SELECT select_list   
      [ INTO new_table ]   
      FROM table_source   
      [ WHERE search_condition ]   
      [ GROUP BY group_by_expression ]   
      [ HAVING search_condition ]   
      [ ORDER BY order_expression [ ASC | DESC ] ]
order by是按指定的列的升序或降序来给查询结果排序,
它不需要查询结果中出现order by的栏位.
更改Order by里的栏位只会影响查询结果的顺序,而不影响查询出的记录总数,和每条记录的内容.
group by是按指定的列对满足Where条件的所有记录分组,并对组内的一些数值型栏位计算出每组的一个统计指标,如求和、求个数、求平均值、求最大值、求最小值、、、、、、、
它对查询结果有个要求:查询结果中的出现的栏位必须是Group by中栏位的子集。
更改Group by里栏位的顺序不会对查询结果有任何影响;
但是更改Group by的栏位,会对查询得到的记录数量,以及各个汇总函数的结果造成影响。 sql语句Group By用法一则
如果我们的需求变成是要算出每一间店 (store_name) 的营业额 (sales),那怎么办呢?在这个情况下,我们要做到两件事:第一,我们对于 store_name 及 Sales 这两个栏位都要选出。第二,我们需要确认所有的 sales 都要依照各个 store_name 来分开算。这个语法为:  

SELECT "栏位1", SUM("栏位2") FROM "表格名" GROUP BY "栏位1"  

4.Distinct和Top一起使用:
SELECT distinct top  2  LastName FROM tablename order by LastName

distinct要放到top前面,这样取出的结果是先将数据Distinct去重复,然后再取其中的前两行
5.复制表(只复制结构)(旧表:a,新表:b):
select top 0 * into b from a
6.拷贝数据(旧表:a,新表:b):
insert into b(a, b, c) select d,e,f from b;
7.跨数据库之间表的拷贝(具体数据使用绝对路径)
insert into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件
例子:..from b in '"&Server.MapPath(".")&"\data.mdb" &"' where..
8.union,找出的互不相同;union all找出的就有重复的
SELECT Date FROM Store_Information
UNION
SELECT Date FROM Internet_Sales
9.EXCEPT是指在第一个集合中存在,但是不存在于第二个集合中的数据。
INTERSECT是指在两个集合中都存在的数据。

EXCEPT 
select * from t2
select * from t1 

INTERSECT 
select * from t1
select * from t2
10.视图;
IF EXISTS (SELECT * FROM sysobjects WHERE
name = 'view_stuInfo_stuMarks')/*检测是否存在*/
DROP VIEW view_stuInfo_stuMarks /*删除视图*/
CREATE VIEW view_stuInfo_stuMarks /*创建视图*/
AS SELECT 姓名=stuName,学号=stuInfo.stuNo,
笔试成绩 =writtenExam,  机试成绩=labExam,
平均分=(writtenExam+labExam)/2
FROM stuInfo LEFT JOIN stuMarks
ON stuInfo.stuNo=stuMarks.stuNo
SELECT * FROM view_stuInfo_stuMarks /*使用视图*/
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics