-
SQL学习笔记八索引,表连接,子查询,ROW_NUMBER
索引经常要查询的语句,则给它建一个索引表连接selectT_OdersasojoinT_CustomersasCono.CustomerId=c...
数据库操作教程 2022-09-23 20:38:34 -
SQL学习笔记三select语句的各种形式小结
复制代码代码如下:Select*fromT_EmployeeselectFName,FAgefromT_EmployeeselectFNamefromT_EmployeewhereFSalary<5000selectFNameas姓名,FAgeas年龄,FSalaryas月薪fromT_EmployeewhereFSalary<5000selectFNameas姓名,FAgeas年龄,FSalaryas月薪,getdate()as当前时间fromT_Employee3.3.1SELECT命令的格式与基本使用Ø数据查询是数据库中最常见的操作。ØSQL语言提供SELECT语句,通过查询操作可得到所需的信息...
数据库操作教程 2022-09-23 20:38:32 -
sqlserver数据库学习笔记
1,exists和in的理解(参考https://www.jb51.net/article/28922.htm)exists:如果子查询中包括某一行,那么就为TRUEin:如果操作数为TRUE等于表达式列表中的一个,那么就为TRUEexists总是搞得不太明白select。...
数据库操作教程 2022-09-23 20:37:52 -
SqlServer基础知识数据检索、查询排序语句
复制代码代码如下:--执行顺序FromWhereSelectselect*from(selectsalassalary,commascommissionfromemp)xwheresalary<5000--得出NameWorkasaJobselectename+'Workasa'+jobasmsgfromempwheredeptno=10--如果员工工资小于2000返回UnderPaid大于等于4k返回OverPaid之间返回OKselectename,sal,casewhensal<2000then'UnderPaid'whensal>=4000then'OverPaid'else'OK'endfromemp--从表中随机返回N条记录newid()--orderby字句中指定数字常量时,是要求根据select列表中相应位置的列排序--orderby字句中用函数时,则按函数在没一行计算结果排序selecttop5enamefromemporderbynewid()--找空值isnullselect*fromempwherecommisnull--将空值转换为实际值--...
数据库操作教程 2022-09-23 20:34:51 -
学习SQL语句(强大的groupby与selectfrom模式)
强大的groupby复制代码代码如下:selectstdname,isnull(sum(casestdsubjectwhen'化学'thenResultend),0)[化学],isnull(sum(casestdsubjectwhen'数学'thenResultend),0)[数学],isnull(sum(casestdsubjectwhen'物理'thenResultend),0)[物理],isnull(sum(casestdsubjectwhen'语文'thenResultend),0)[语文]from#studentgroupbystdnamegroupby与sum+case结合,可以将表1中的记录(行)变成表2的字段(列)。Sum里面如果没有case,那么出来的值,只能是全部科目的总和,用了case以后,就是某科的成绩;然后这里用了好几个sum,每个科目一个sum,于是表1中本来某人某科占一条记录的“行”就变成了表2里某人一条记录,每科做一个字段了利用selectfrom(selectfrom)的模式生成SQL语句复制代码代码如下:declare@sqlvarchar(4000...
数据库操作教程 2022-09-23 20:31:24 -
SQL学习笔记六union联合结果集使用
联合结果集新建临时工数据表复制代码代码如下:CREATETABLET_TempEmployee(FIdCardNumberVARCHAR(20),FNameVARCHAR(20),FAgeint,PRIMARYKEY(FIdCardNumber));INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890121','Sarani',33);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890122','Tom',26);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890123','Yalaha',38);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890124','Tina',26);INSERTINTOT_TempEmployee(FIdCardNumb...
数据库操作教程 2022-09-23 20:31:05 -
SQL学习笔记五去重,给新加字段赋值的方法
去掉数据重复增加两个字段alterTABLET_EmployeeAddFSubCompanyVARchar(20);ALTERTABLET_EmployeeADDFDepartmentVARCHAR(20);给新加的字段赋值UPDATET_EmployeeSETFSubCompany='Beijing',FDepartment='Development'whereFNumber='DEV001';UPDATET_EmployeeSETFSubCompany='ShenZhen'...
数据库操作教程 2022-09-23 20:27:41 -
SQL学习笔记一SQL基础知识
常用字段类型bit(0和1),datetime,int,varchar,nvarchar(可能含有中文用nvarchar)Varchar,nvarchar和char(n)的区别char(n)不足长度n的部分用空格填充。SQL语句中,字符串用单引号...
数据库操作教程 2022-09-23 20:26:50 -
SQL学习笔记四聚合函数、排序方法
聚合函数count,max,min,avg,sum...selectcount(*)fromT_EmployeeselectMax(FSalary)fromT_Employee排序ASC升序DESC降序select*fromT_EmployeeorderbyFage先按年龄降序排列。如果年龄相同,则按薪水升序排列select*fromT_EmployeeorderbyFAgeDESC,FSalaryASCorderby要放在where子句之后通配符过滤通配符过滤用like单字符通配符‘_'多字符通配符‘%'select*fromT_EmployeewhereFNamelike'_erry'NULL是不知道的意思,而不是没有用SQL语句查询NULL的数据不能用=或<>而用isNULL或者isnotNULLselect*fromT_EmployeewhereFNameisNULLin(23,25)同时匹配两个值...
数据库操作教程 2022-09-23 20:26:10 -
SQL学习笔记二创建表、插入数据的语句
创建一个表T_Employee并插入若干数据复制代码代码如下:createtableT_Employee(FNumberVARCHAR(20),FNameVARCHAR(20),FAgeint,FSalaryNUMERIC(10,2),PRIMARYKEY(FNumber));insertintoT_Employee(FNumber,FName,FAge,FSalary)values('DEV001','Tom',25,8300);insertintoT_Employee(FNumber,FName,FAge,FSalary)values('DEV002','Jerry',28,2300.80);insertintoT_Employee(FNumber,FName,FAge,FSalary)values('SALES001','John',23,5000);insertintoT_Employee(FNumber,FName,FAge,FSalary)values('SALES002','Kerry',28,6200);insertintoT_Employee(FNumber,FNam...
数据库操作教程 2022-09-23 20:25:11 -
MSSQL存储过程学习笔记一关于存储过程
一、存储过程的概念,优点,语法在写笔记之前,首先需要整理好这些概念性的东西,否则的话,就会在概念上产生陌生或者是混淆的感觉。概念:将常用的或者是很复杂的工作,预先利用SQL语句写好并用一个指定的名称存储起来,那么以后要是调用这些SQL语句的时候,只需要利用Execute/Exec执行以下,即可...
数据库操作教程 2022-09-23 20:24:43