zoukankan      html  css  js  c++  java
  • Microsoft SQL Server

    CREATE DATABASE  数据库名称                    /*创建数据库*/
    USE 数据库名称                                    /*选择要使用的数据库*/
    SELECT NAME FROM SYS.DATABASES            /*查看数据库管理系统中所有的数据库名称*/
    SELECT NAME FROM SYS.OBJECTS WHERE TYPE='U'    /*查看选择的数据库中所有的数据表名称*/
    DROP DATABASE 数据库名称                        /*删除数据库*/
    DROP TABLE 表名称                                /*删除表*/
    ALTER TABLE 表名称 ADD 表字段 varchar(20)    /*增加表的字段*/
    ALTER TABLE 表名称 DROP COLUMN 字段    /*删除表的字段*/
    INSERT INTO 表名称 (字段1,字段2)values(值1,值2)    /*在表中插入数据*/
    SELECT NEWID()  /*产生GUID值。主键选择int类型自动增长或者uniqueidentifier(GUID)unique:唯一的。 identifier:标识符。  */    
    DELETE FROM     表名称                            /*删除表中所有的数据*/
    DELETE FROM 表名称 WHERE 字段=条件值            /*删除表中指定的数据/
    SELECT ISNULL(字段,默认值) FROM 表名称        /*空值处理。ISNULL()--给空值设默认值*/
    /*创建数据表。 为经常要进行查询的字段添加索引可以提升性能,会降低插入、更新、删除该字段的性能*/
    CREATE TABLE 表名称(ID int primary key identity(1,1),姓名 varchar(10),年龄 int)
    CREATE VIEW 视图名称 AS SELECT * FROM 表名称   /*创建查询视图*/
    CREATE PROCEDURE 存储过程名称                  /*创建存储过程*/
    @字段1 nvarchar(50),@字段2 nvarchar(50),@字段3 nvarchar(50)
    AS
    INSERT INTO TB_COURSE VALUES(@字段1, @字段2, @字段3);/*和存储过程关联的增、删、改SQL语句*/
    
    /*查询表中数据*/  
    /*COUNT()最大值、MIN()平均值、SUM()求绝对值 */
    /*CEILING()舍入到最小整数(3.99舍入后为3)、ROUND()--四舍五入*/
    SELECT * FROM 表名称    
    SELECT TOP 2 字段1,字段2 FROM 表名称 
    SELECT 字段 AS 别名 ,年龄 AS 别名 FROM 表名称
    SELECT COUNT(*)  AS 别名 FROM 表名称
    SELECT MAX(年龄)  AS 别名 FROM 表名称
    SELECT MIN(年龄) AS 别名 FROM 表名称
    SELECT 1+1,GETDATE(), NEWID()
    /*更新数据  > 、<、=、!=、< >  or(或者) 、and(并且)、 not(非) */
    UPDATE 表名称 SET 字段=更新值 WHERE 字段2=条件值 
    UPDATE 表名称 SET 字段1=更新值,字段2=更新值
    /*递增排序 ASC(AScending) 、递减排序 DESC(descending)、按字段排序ORDER BY*/
    SELECT * FROM 表名称 ORDER BY 年龄 ASC,工资 DESC/*按年龄递增排序,年龄相同的按工资递减排序*/
    SELECT 姓名,年龄 FROM 表名称 WHERE 年龄>23 ORDER BY 年龄 ASC
    /*通配符过滤、空值检测:is null。_(一个下划线代表匹配1个字符)、%(匹配任意多个字符)*/
    SELECT * FROM 表名称 WHERE 姓名 LIKE '%明_'
    SELECT * FROM 表名称 WHERE 年龄 IS NULL
    /*多值匹配, in(26,23)等同于年龄=26 or 年龄=23*/
    SELECT 姓名,年龄 FROMWHERE 年龄 IN (26,23)
    /*数据分组。按群组排序GROUP BY,HAVING:对分组后的数据进行过滤。*/
    SELECT 年龄,COUNT(*) AS 总人数 FROM 表名称 GROUP BY 年龄
    SELECT 年龄,COUNT(*) AS 总人数,MAX(薪水) AS 最高薪水 FROM 表名称 GROUP BY 年龄/*相同年龄分为一组,显示每个组总人数、组中薪水最高的人*/
    SELECT 年龄,COUNT(*) AS 总人数 FROM 表名称 WHERE 年龄 IS NOT NULL GROUP BY 年龄
    SELECT 年龄,COUNT(*) AS 总人数 FROM 表名称 GROUP BY 年龄 HAVING 年龄<26
    /*去除数据重复。DISTINCT(清除完全相同的一行数据重复) */
    SELECT DISTINCT 字段 FROM 表名称 
    /*联合结果集。UNION(将不同数据表的查询结果联合,结果集的字段个数必须相同)*/
    /*使用UNION默认去除完全重复的数据,使用UNION ALL 可以保留完全重复的数据 。如果不需要去除重复数据,推荐使用UNION ALL。可以提升查询性能*/
    SELECT 姓名,年龄 FROM 表1 UNION SELECT 姓名,年龄 FROM 表2 UNION SELECT 姓名,年龄 FROM 表3
    SELECT 姓名,年龄 FROM 表1 UNION SELECT '年龄的总和', SUM(年龄) FROM 表1 ORDER BY 年龄 DESC
    /*建立表的外键关联*/
    CREATE TABLE Province(proID int primary key,proName varchar(50) not null)
    CREATE TABLE City(cityID int not null,cityName varchar(50) primary key,proID int foreign key references province(proID))
    /*表连接。join窗口函数ROW_NUMBER(),限制结果集行数
    SELECT ROW_NUMBER() OVER(ORDER BY 年龄) AS行号,ID,姓名,年龄 FROM 表名称
    SELECT * FROM(SELECT ROW_NUMBER() OVER(ORDER BY 年龄 DESC) AS 行号,ID,姓名,年龄 FROM 表名称) AS T WHERE T.行号<=3
    SELECT * FROM(SELECT ROW_NUMBER() OVER (ORDER BY ID) AS 行号, ID, USERNAME, PWD FROM 表名称) AS T 
    WHERE T .行号 >= 1+(@Page-1) * 10 AND T .行号  
  • 相关阅读:
    二叉树的遍历详解:前、中、后、层次遍历(Python实现)
    结对编程——需求建模
    使用 python 与 sqlite3 实现简易的学生信息管理系统
    PowerShell下, MySQL备份与还原遇到的坑
    自动生成四则运算(python实现) 更新
    自动生成四则运算题目(python实现)
    软件工程导论的感想
    矩阵的秩与行列式的几何意义
    微信好友分布分析
    第一次结队作业
  • 原文地址:https://www.cnblogs.com/xiongbaobao/p/2744736.html
Copyright © 2011-2022 走看看