20190412 T-SQL语言一
作者:互联网
-- T-SQL
----------------------------------------------------
-- 例如1 什么是注释符 单行注释
select *
from kc
/*
select *
from kc
*/
-- 注释的多行
/*
Create By Soar.Pang
The Time : 2019-04-08
Use For : 注释内容
*/
----------------------------------------------------
-- 常量,其实只是针对一些类型的数据
SELECT *
FROM GuidOne
insert into GuidOne
select NEWID(); -- GUID 是不会一样的
-- 常量
-- 例2 变量
DECLARE @name VARCHAR(30)
SET @name='soar.pang'
--SELECT @name AS ChinaName
PRINT @name
-- 案例3 创建一个局部变量
DECLARE @a varchar(3),@b varchar(3),@c varchar(3) -- 声明变量
SET @a='YES' -- 为变量赋值
SET @b='NO' -- 为变量赋值
PRINT '交换前: @a='+ @a +' @b=' + @b
SET @c = @a
SET @a = @b
SET @b = @c
PRINT '交换后:@a='+@a+' @b='+@b
-- 这就是变量的作用
SELECT @@ERROR
-- 全局变量,简单点的理解,就是在SQL SERVER系统使用的变量值 重要的是@@ 符号
SELECT @@CONNECTIONS
SELECT @@ROWCOUNT
SELECT @@VERSION
SELECT @@LANGUAGE -- 当前数据库语言
-- 运算符的例子
-- 创建数据库
-- bit常量
SELECT *
FROM GuidOne -- GUID 是不会 重复的
INSERT INTO GuidOne
VALUES(NEWID(),1); -- bit 针对 开发中用于存储false,true 的对应结果
INSERT INTO GuidOne
VALUES(NEWID(),2,3); --这个2 是不会被存放,因为fit的值只有1,0
INSERT INTO GuidOne
VALUES(NEWID(),0,5,11.22); -- 当选择decimal(18, 0) 的时候,查询出来的结果和Int 是比较相似的
-- 这里附带了工具设置,表保护的限制
-- 当设置 decimal(18, 2) 的时候 , 就表示存放两位小数
-- 那么如果我插入4位小数会如何
INSERT INTO GuidOne
VALUES(NEWID(),0,6,11.1123); -- 结果是只会保留两位,那么是否会四舍五入,那么我们来放一个大一点的值
INSERT INTO GuidOne
VALUES(NEWID(),0,7,11.1167); -- 结果就发生了变化
SELECT *
FROM GuidOne
-- 这里可以不做讲解
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2'); -- 现在使用科学计数方法去存储数据比较少
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2); --科学计数办法
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123'); -- 钱钱符号
-- 字符串
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','soar.pang');
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','soar');
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','so');
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','sm');
-- 运算符号
DECLARE @su int,@x int,@y int
SET @x=12 --@x=1
SET @y=5 -- @y=3
--SET @su=@x+@y --加法
--SET @su=@x*@y --乘法
SET @su=@x%@y
PRINT @su;
-- 加减也是可以对日期进行计算的
-- 日期
SELECT GETDATE() AS DATATIME;
-- 赋值运算符号
DECLARE @i int
SET @i = 2;
PRINT @i;
-- 按位运算符号
USE xsxk
GO
SELECT *
FROM GuidOne
WHERE IntType=3
GO
SELECT *
FROM GuidOne
WHERE IntType=3 AND BitType=1 -- 同时为真
SELECT *
FROM GuidOne
WHERE IntType=3 OR BitType<>1 -- 一个为真 即可
-- 通配符
SELECT *
FROM GuidOne T
WHERE T.VarCharType like 's%' -- 包含零个或者更多字符的任意字符串
SELECT *
FROM GuidOne T
WHERE T.VarCharType like 's_' --获取s到头的字符
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','Carsen');
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','Larsen');
INSERT INTO GuidOne
VALUES(NEWID(),0,8,11.1167,'101.5E-2',0.5e-2,'$123','Karsen');
SELECT *
FROM GuidOne G WHERE G.VarCharType like '[C-P]arsen' -- 这里其实讲述的只是一个范围
SELECT *
FROM GuidOne G WHERE G.VarCharType like '[^K]arsen' -- 不限制范围,只是即是通配符,有不包括K
---- SELECT
BEGIN
SELECT *
FROM GuidOne
END;
-- IF
DECLARE @A INT ,@B INT
SET @A=1
SET @B=2
IF @B>@A
PRINT 1; -- 只有符合就会执行
PRINT 'OK';
-- IF ... ELSE
DECLARE @aa int,@bb int
SET @aa=1
SET @bb=3
IF (@aa+@bb)>10
PRINT '我饿了'
ELSE IF @aa=1 --如果增加了ELSE IF 进行条件判断
PRINT '还行'
ELSE
PRINT '这是不对的'
-- CASE THEN ELSE
标签:INSERT,GuidOneVALUES,语言,11.1167,INTO,NEWID,SQL,20190412,SELECT 来源: https://www.cnblogs.com/Soar-Pang/p/10694044.html