SqlServer入门学习

时间:2022-12-26 01:50:24

--distinct(去除重复数据)
select distinct Time from HightTable
--Between
select * from HightTable where ID BETWEEN 1 and 2
--or
select * from HightTable where ID=1 or ID=2
--and和or结合
select * from HightTable where (ID=1 or ID =2) and ID=1
--order by和排序(降序)
select * from HightTable order by ID desc
--top全部
select top 2 * from HightTable
--top字段
select top 2 ID from HightTable
--like左模糊(匹配坐标左边的字符)
select * from HightTable where type like 'N%'
--like右模糊(匹配坐标右边的字符)
select * from HightTable where type like '%N'
--like全匹配
select * from HightTable where type like '%N%'
--_匹配(_字符之后是某个字符的匹配)
select * from HightTable where type like '_N'
--_多个匹配
select * from HightTable where type like 'N_N_N'
--[]通配符(左通配'[]%',右通配'%[]',全通配,'%[]%',反通配'%[!N]%')
select * from HightTable where type like '%[N]%'
--in
select * from HightTable where ID in(1,2)
--表关联条件查询
select a.id,b.id,b.Type from TestTime a,HightTable b where a.ID=10 and b.ID=1
--inner join 内连接
select * from HightTable h inner join TestTime t on h.ID = t.ID where h.ID<> null
--left join 左连接
select * from HightTable h left join TestTime t on h.ID = t.ID where h.ID = 1
--right join 右连接
select * from HightTable h right join TestTime t on h.ID = t.ID where h.ID=1
--full join 只要其中一个表中存在匹配,就返回行
select * from HightTable h full join TestTime t on h.ID = t.ID where h.ID=1
--union 合并两个或多个 SELECT 语句的结果集(不存在重复的值)
select * from HightTable union select * from HightTable where ID=1
--union all(可以重复)
select * from HightTable union all select * from HightTable where ID=1
--select into(用于复制表和数据,复制一些字段)
select Type,Time into HightTabless from HightTable
--select into(用于复制表和数据,复制整张表)
select * into HightTables from HightTable
--连接其他表创新新表和数据
select Type,Time into HightTablet from HightTable right join TestTime on HightTable.ID = TestTime.ID

--创建数据库
create database backbase
--删除数据库
drop database EFDemo
--创建表 UNIQUE--约束唯一标识数据库表中的每条记录,PRIMARY KEY自增,跟unique不能来个同用
create table table_back(
id int NOT NULL UNIQUE ,
lastname varchar(100),
cityname varchar(100)
)
--删除表
--drop table HightTable
--FOREIGN KEY外键约束
create table table_back1(
id int NOT NULL UNIQUE ,
lastname varchar(100),
cityname varchar(100),
Id_P int FOREIGN KEY REFERENCES table_back1(id)
)
--删除外键
ALTER TABLE Orders
DROP CONSTRAINT fk_PerOrders
--Check限制值范围
create table table_back2(
id int NOT NULL UNIQUE ,
lastname varchar(100),
cityname varchar(100),
Id_P int FOREIGN KEY REFERENCES table_back1(id),
check(id>0)--or(check id>0 and lastname='xiaomi'),表已存在创建check约束则为(Add check(id>0))
)
--删除check约束
alter table table_back2
drop CONSTRAINT checkname
--default 向表中插入默认值
--OrderDate date DEFAULT GETDATE(),City varchar(255) DEFAULT 'Sandnes'
--删除默认值设置
--ALTER TABLE table_back2
--ALTER COLUMN City DROP DEFAULT
--CREATE INDEX 语句用于在表中创建索引(可以多列索引)
create index index_name on highttable(id)
--唯一索引
create unique index index_name1 on highttable(id)
drop index index_name on highttable
--TRUNCATE TABLE 删除表格数据但不删除表格本身结构
TRUNCATE TABLE highttable
--alter table
alter table highttable add colunm_name int
--drop column 删除表中的列
alter table highttable drop column colunm_name
--alter column 修改表中的列
alter table highttable alter column colunm_name varchar(30)
--Auto-increment 会在新记录插入表中时生成一个唯一的数字
--CREATE VIEW 创建视图
CREATE VIEW [view_name] AS
SELECT ID,Value
FROM HightTable
--now 返回当前的日期和时间
--CURDATE() 返回当前的日期
--CURTIME() 返回当前的时间
--DATE() 提取日期或日期/时间表达式的日期部分
--EXTRACT() 返回日期/时间按的单独部分
--DATE_ADD() 给日期添加指定的时间间隔
--DATE_SUB() 从日期减去指定的时间间隔
--DATEDIFF() 返回两个日期之间的天数
--DATE_FORMAT() 用不同的格式显示日期/时间
--GETDATE() 返回当前日期和时间
--DATEPART() 返回日期/时间的单独部分
--DATEADD() 在日期中添加或减去指定的时间间隔
--DATEDIFF() 返回两个日期之间的时间
--CONVERT() 用不同的格式显示日期/时间
--DATE - 格式 YYYY-MM-DD
--DATETIME - 格式: YYYY-MM-DD HH:MM:SS
--SMALLDATETIME - 格式: YYYY-MM-DD HH:MM:SS
--TIMESTAMP - 格式: 唯一的数字
--is null
select * from HightTable where Value is null
--is not null
select * from HightTable where Value is not null
--function 函数
--AVG 返回某列的平均值
SELECT AVG(column_name) FROM table_name
--COUNT(column_name) 返回某列的行数(不包括 NULL 值)
select COUNT(column_name) from HightTable
--COUNT(*) 返回被选行数
select COUNT(*) from HightTable
--First 返回在指定的域中第一个记录的值
--Last 返回指定域中最后一个记录的值
--MAX(column) 返回某列的最高值
select MAX(value) from HightTable
--min(column) 返回某列的最低值
select MIN(value) from HightTable
--sum 返回某列的总和
select SUM(value) from HightTable
--var(column) 返回总体样本方差的估计值
--VARP(column 返回总体方差的估计值
--UCASE(c) 将某个域转换为大写
select UCASE(type) from HightTable
--LCASE(C) 将摸个域转换成小写
select lcase(type) highttable
--MID(c,start[,end]) 从某个文本域提取字符
--LEN(c) 返回某个文本域的长度
select LEN(value) from HightTable
--INSTR(c,char) 返回在某个文本域中指定字符的数值位置
select instr(2,'dasd') from HightTable
--LEFT(c,number_of_char) 返回某个被请求的文本域的左侧部分
select LEFT('dasdasdas',3)
--right(c,number_of_char) 返回某个被请求的文本域的右侧部分
--round(c,decimals) 对某个数值域进行指定小数位数的四舍五入
select ROUND(2.122,2)
--MOD(X,Y)返回除法操作的余数
select mod(3,6)
--now() 返回当前的系统日期
select now() from HightTable
--format(c,format) 返回某个域的显示方式(可用convert代替)
select format(value,format) from HightTable
--datediff(d,date1,date2) 用于执行日期计算
select DATEDIFF(MONTH,'2015-01-12',getdate())
--group by 根据一个或多个列对结果集进行分组
select id,sum(Value) from HightTable group by id
--Having 合计函数,无法与where一起使用,必须有group by
select id from HightTable group by ID having SUM(sumValue)>10 order by ID desc
--排序(降序)
select * from HightTable order by ID desc
--排序(升序)
select * from HightTable order by ID asc

--时间模糊查询

SELECT * FROM table WHERE Convert(varchar,createdate,120) LIKE '2016-04%'

希望对大家有用!

SqlServer入门学习的更多相关文章

  1. jFinal 2&period;2入门学习之一:搭建框架输出helloword

    官方推荐用Eclipse IDE for Java EE Developers 做为开发环境 1.创建 Dynamic Web Project 2.修改 Default Output Folder,推 ...

  2. 【转载】salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)

    salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)   salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesfo ...

  3. vue入门学习(基础篇)

    vue入门学习总结: vue的一个组件包括三部分:template.style.script. vue的数据在data中定义使用. 数据渲染指令:v-text.v-html.{{}}. 隐藏未编译的标 ...

  4. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  5. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  6. PyQt4入门学习笔记(三)

    # PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...

  7. PyQt4入门学习笔记(一)

    PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...

  8. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  9. Retrofit 入门学习

    Retrofit 入门学习官方RetrofitAPI 官方的一个例子 public interface GitHubService { @GET("users/{user}/repos&qu ...

随机推荐

  1. 通过重构VO实现校验功能

    现有个需求,需要添加供应商的页面校验功能,当填写一二级时,供应商是必填项,并且所填的供应商必须是二级分类下的,否则下一步和保存过不去: 解决方案: 1.在页面AM的XXXImpl.java中, 加入引 ...

  2. 膜拜 2014-2 (献给L之三)

    文/安然 深深的夜静静的想你细细的品味满满的甜蜜爱,心灵的对话让我流泪战栗谢谢你给我这么弥足珍贵的体会不能一生相随又有什么关系你一直都在我的爱就永不停息此生足以——献给心底的爱

  3. CentOS 6&period;5 安装MySQL5&period;7 RPM

    一.新特性 MySQL 5.7可谓是一个令人激动的里程碑,在默认了InnoDB引擎的基础上,新增了ssl.json.虚拟列等新特性.相对于postgreSQL和MariaDB而言,MySQL5.7做了 ...

  4. file&lowbar;get&lowbar;contents无法请求https连接的解决方法

    PHP.ini默认配置下,用file_get_contents读取https的链接,就会如下错误: Warning: fopen() [function.fopen]: Unable to find ...

  5. 用react系列技术栈实现的demo整合系统

    引子 学生时代为了掌握某个知识点会不断地做习题,做总结,步入岗位之后何尝不是一样呢?做业务就如同做习题,如果‘课后’适当地进行总结,必然更快地提升自己的水平. 由于公司采用的react+node的技术 ...

  6. Linux软件包的安装(rpm&plus;yum)

    概述: 1.rpm软件包管理命令软件包的获取a.光盘镜像中有很多软件包可以使用:先挂载光盘,再查看软件包b.从软件的官网获取 .rpm 安装rpm包 ipm -ivh 软件包名称删除rpm包 ipm ...

  7. 【数组】Container With Most Water

    题目: Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, a ...

  8. 多进程编程之用户ID和用户组ID

      实际用户ID(real user id):用于在系统中标识一个用户是谁,当用户使用用户名和密码成功登录后一个UNIX系统后就唯一确定了他的uid:(实际用户组ID类似) 有效用户ID(effect ...

  9. Codeforces702A - Maximum Increase【尺取】

    题意: 求一个连续的最长子序列长度: 思路: 没看仔细还wa1了-以为LIS- 然后写了尺取吧...= =太不仔细了.不过收获是LIS特么写挫了然后看了学长的blog<-点我- 题目的挫code ...

  10. DROP TRIGGER - 删除一个触发器定义

    SYNOPSIS DROP TRIGGER name ON table [ CASCADE | RESTRICT ] DESCRIPTION 描述 DROP TRIGGER 将删除所有对一个现存触发器 ...