SQL学习笔记
BowenXu11
这个作者很懒,什么都没留下…
展开
-
ADO.net通过存储过程,实现增删查改
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.W...原创 2020-03-10 15:02:59 · 202 阅读 · 0 评论 -
C#与T-SQL 银行转账数据交互设计( 事件,存储过程综合应用)
设计理念1.所有数据存储比对和存储过程全部交给服务器端2.前端只做数据提交和判断结果后端SQL数据库存储过程create table bank( userId int identity primary key not null, userName nvarchar(32) not null, userMoney int null, check(userMoney ...原创 2020-03-09 23:08:45 · 387 阅读 · 0 评论 -
SQL 写一个分页查询订单详情的存储过程
--写一个分页查询订单详情的存储过程 drop proc GetPageForOrderD go create proc GetPageForOrderD --四个参数,第几页,每页多少条,一共多少条,一共多少页 @pageindex int, @rowsinpage int, @rowscount int output, @pagescount int output...原创 2020-03-09 15:25:48 · 423 阅读 · 0 评论 -
SQL 基础知识-存储过程-带参数的存储过程
------1.系统存储过程exec sp_databases 返回当前实列中的所有数据库的基本信息exec sp_tables 返回当前数据库下的所有表和视图exec sp_columns '表名' 返回某个表下的所有列exec sp_helptext 'sp_databases' 查看某个存储过程的源代码------创建自己的存储过程create proc usp...原创 2020-03-09 13:57:44 · 2232 阅读 · 0 评论 -
T-SQL 事务 两个需要同时保证成功的语句,可以用transaction框架来执行
---事务-------同时两个行数据进行交互,必须保证同时成功。可以用事务transaction来框架begin transaction --创建一个事物 declare @countError int = 0--用于记录error的变量 update bank set tblmoney=tblmoney-100 where autoId =1 set @countErro...原创 2020-03-09 11:58:43 · 691 阅读 · 0 评论 -
SQL 左联接+when then+子查询 综合练习
select stName,stage, 英语成绩=case when tenglish is null then '缺考' when tenglish < 60 then '不及格' else cast(tenglish as nvarchar) end, 数学成绩=case when tmath is null then '缺考' whe...原创 2020-03-08 14:02:36 · 236 阅读 · 0 评论 -
SQL 内连接 左联接 右连接
--Join链接--内连接 inner join --左外连接 left outer join --left join --表示 join左边的数据全显示出来,右边表的数据匹配的显示数据,不匹配的显示NULL--left join 左边的表,就叫左表。--请查询出那些没有参加考试的同学的stid ,姓名和年龄--使用左查询的方法select t1.stid,t1.stna...原创 2020-03-08 12:53:58 · 118 阅读 · 0 评论 -
SQL 子查询select
--子查询--独立子查询select * from student where sclass in(select cid form class where cName='高一一班' or cName='高二一班') --关联子查询 exists() 函数表示 ,当exists括号中的条件为true时,执行select * from student where exists(sel...原创 2020-03-08 12:40:37 · 159 阅读 · 0 评论 -
SQL 分页查询的两种思路
------分页查询-------------要分页显示,首先确定一个排序方式。否则分页没有意义------分页显示7条数据-----—sql 2000-----第一页select top 7 * from table order by col asc----查询出前两页的select top(7*2) from table order by col asc ----第二页,...原创 2020-03-08 10:18:04 · 208 阅读 · 0 评论 -
SQL 数据库优化 关于索引
-------sql数据库优化-------------索引-----1.索引的目的:提高查询效率2.索引分两种2.1聚集索引(物理),一个表中只能有一个聚集索引2.2非聚集索引(逻辑),一个表中可以有多个非聚集索引3.增加索引后,会增加额外的储存空间,同时降低了增加新记录,修改,删除效率4.只在经常查询的列上建索引,不要建太多索引----------语法-----------–...原创 2020-03-07 19:16:06 · 128 阅读 · 0 评论 -
SQL when then实战练习
select studentId, 语文=max(case when [courseName]='语文' then [score] end), 数学=max(case when [courseName]='数学' then [score] end), 英语=max(case when [courseName]='英语' then [score]...原创 2020-03-07 17:25:22 · 160 阅读 · 0 评论 -
SQL when then练习 --将数据按照分类整理
SQL语句select teamName, 第1赛季得分=sum(case when [seasonName]='第1赛季' then [Score] end), 第2赛季得分=sum(case when [seasonName]='第2赛季' then [Score] end), 第3赛季得分=sum(case when [seasonName]='第3...原创 2020-03-07 16:48:07 · 126 阅读 · 0 评论 -
SQL语句 如何通过一个SQL语句,将一列的成绩 分成胜,负(A,B)(及格不及格)两列显示出来
第一个表是数据源第二表是结果--思路,--1 用when then 语句,将成绩列按条件拆分成两列--2 用集合函数,分别求两列的个数 countselect teamName , 胜=count( case [gameResult] when '胜' then 1 end), 负=count(case [gameResult] when '负' then ...原创 2020-03-06 17:28:56 · 1152 阅读 · 0 评论 -
SQL 语句groupby与聚合函数 配合使用
select EmployeeID,SUM(Freight) as 总销售额,称号=case when SUM(Freight) >10000 then '牛人' when SUM(Freight) >8000 then '金牌' when SUM(Freight) >6000 then '银牌' when SUM(Freight) >4000 then '...原创 2020-03-06 17:05:40 · 800 阅读 · 0 评论 -
SQL 面试题--表中有A、B、C三个列,用SQL语句实现: --当A列大于B列时,选择A列否则选B列, --当B列大于C列时,选择B列否则选C列
-------练习题create table TestA ( A int, B int, C int)goinsert into TestA values(10,20,30)insert into TestA values(20,30,10)insert into TestA values(30,10,20)insert into TestA values(10...原创 2020-03-06 16:23:12 · 990 阅读 · 0 评论 -
SQL when then 练习题
create table TblScore ( tScoreId int identity primary key not null, tSid int not null, tEnglish int null, tMath int null, ) go insert into TblScore values(1,56,100) i...原创 2020-03-06 15:36:36 · 136 阅读 · 0 评论 -
sql语句之when then 使用
----sql case when else练习题----创建数据表create table UserLevel( uId int identity primary key not null, name nvarchar(32) not null, level int default(1) not null)goinsert into UserLevel values(N'犀利...原创 2020-03-06 15:26:51 · 8780 阅读 · 0 评论 -
使用Sql语句生成MD5加密字符串
select substring(sys.fn_sqlvarbasetostr(HashBytes('md5','123456')),3,32)-- SQL语句获得md5 值 HashByter('md5','123456') 拿到base类型的md5值--sys.fn_sqlvarbasetostr 将base类型的md5值 转成字符串-- substring 截取字符串 去掉1,2位置...原创 2020-03-03 10:40:24 · 3534 阅读 · 0 评论 -
Sql语句 -新增条目并返回自动编号
insert into 表(列1,列2) output inserted.自动编号列 values(值1,值2);例如:insert into class(cName,cDescription) output inserted.classId values(‘高三一班’,‘全是美女’)...原创 2020-03-03 10:15:19 · 417 阅读 · 0 评论