今天来带大家了解下在sql server 中的查询机制

使用select语句进行查询

1.查询所有的数据行和列

select  *  from student

2.查询部分行和列

select scode,sname,saddress
from * student
where saddress='北京'

3.在查询中使用列的别名

select scode as 学生编号,sname as 姓名 ,saddress as 地址
from student
where saddress<>'北京'

4.查询空值

select sname from student
where semail is null

5.在查询中使用常量

select 姓名=sname ,地址=saddress,'汉族' as 民族
from student

6.查询返回限制的函数

select top 5 sname, saddress
from student
where Ssex=0

查询排序

如何使用order by

如果要按照一定顺序排列查询语句选中的行,则需要使用order by 字句,并且排序可以是升序(asc)可以是降序(desc),

eg:   将学生成绩按照升序排列

select studentID as 学生编号, CourseID as 课程ID,Score as 成绩

from Score 

where Score >60

order by Score,CourseID

在查询中使用函数

1.字符串函数

函数名称:
1.CharIndex('str1','str2',index)//位置从开始
--第一个参数:要查询的字符串
--第二个参数:在哪个字符串中搜索
--第三个参数:从str2的第几个字母开始搜索
--注意点:如果在str2中没有找到str1,那么返回
eg:
SELECT CHARINDEX('JBNS','My Jbns Course')
2.len():获取小括号中字符串的长度,空格也算一个字符长度
eg:
SELECT LEN('SQL Server课程')
3.upper():将括号中出现的英文全部转换成大写
eg:
select upper('i can speak english.你能吗?')
select lower('I HAVE A DREAM')
4.LTrim():清除括号中内容左边的空格(left:right)
eg:
select rtrim(' 生活不是林黛玉, ')
5.既想移除左边空格,也想移除右边空格
eg:
select rtrim(ltrim(' 生活不是林黛玉, '))
select ltrim(rtrim(' 你还好吧! '))
6.思路灵活
eg:
select len(rtrim('今年奇怪了,北京没下雪,去去去 '))
7.substring('字符串',截取的位置,截取的长度)
eg:
select substring('我是中国人,我爱自己伟大的祖国,真的',6,1)
8.right():从字符串(左)右边返回指定类型的字符
eg:
select left('大家今天好像都没有交日记本,我去',3)
select right('大家今天好像都没有交日记本,我去',2)
9.replace('str1','要替换的字符','目标字符'):
eg:
select replace('张海迪,残疾人,虽然手不残疾,但是X残疾','残 疾','好')
10.stuff('字符串',删除的起始位置,删除的长度,'插入的字符串')
eg:
select stuff('我爱你中国,我爱你故乡',4,2,'北京')

2.日期函数

1.getdate():获取当前日期和时间
eg:
select getdate()
2.dateadd(按年/月/日添加,增量,时间)
eg:
select dateadd(yy,100,'2014-8-6')
select dateadd(year,-20,getdate())
3.datediff(按年/月/日求差,小时间,大时间)
eg:
select datediff(year,'1998-01-01',getdate())
4.datename:获取某个日期是星期几
eg:
select datename(dw,'2014-08-06')
5.datepart(mm,日期):获取指定日期对应的年/月/日部分
eg:
select datepart(yy,getdate())
通过该方式也可以获取当天是周几
eg:
select datepart(dw,getdate())

3.数学函数

1.rand():产生一个到之间的随机数
eg:
select right(rand(),4)
2..abs:取绝对值
eg:
select abs(-10)
select abs(10)非负数
3.ceiling:天花板,你要看天花板,抬头,向上取整
eg:
select ceiling(1.999991)
4.floor:向下取整
eg:
select floor(1.999999)
select ceiling(1.000000000000001)
select floor(2.999999999999999)
5.power(5,2)求幂值
eg:
select power(4,4)
select 1*2/3+5-56+100-5/100
select power(2,3)
6.round:将一个数字四舍五入到指定精度
eg:
select round(42.564,1)
7.sign:如果括号中写的是一个正数,返回,如果是负数,返回-1
eg:
--如果是返回
select sign(20)
select sign(0)
8.sqrt()开平方
eg:
select sqrt(9)

4.常用的系统函数

convert:(用来转换数据类型)
eg:
select convert (varchar(5),12345)
返回:字符串''

ok 精彩的代码分析时间就到这里,请持续关注哦!

T-SQL查询基础的更多相关文章

  1. 2 SQL 查询基础

    2 查询基础 2-1 SELECT语句基础 通过SELECT语句查询并选取必要数据的过程称为匹配查询或查询(query). 子句是SQL语句的组成要素,是以SELECT或者FROM等作为起始的短语. ...

  2. SQl查询基础

    SQL语言是一门简单易学却又功能强大的语言,他让你快速上手并写出比较复杂的查询语句,但对于大多数开发者来书,使用SQL查询数据库并没有一个抽象的过程和一个合理的步骤,这很可能会是在写一些特定的查询语句 ...

  3. (25)ASP.NET Core EF查询(复杂查询运算符、原生SQL查询、异步查询)

    1.复杂查询运算符 在生产场景中,我们经常用到LINQ运算符进行查询获取数据,现在我们就来了解下生产场景经常出现几种复杂查询运算符. 1.1联接(INNER JOIN) 借助LINQ Join运算符, ...

  4. EF core的原生SQL查询以及用EF core进行分页查询遇到的问题

    在用.net core进行数据库访问,需要处理一些比较复杂的查询,就不得不用原生的SQL查询了,然而EF Core 和EF6 的原生sql查询存在很大的差异. 在EF6中我们用SqlQuery和Exe ...

  5. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  6. 【T-SQL基础】01.单表查询-几道sql查询题

    概述: 本系列[T-SQL基础]主要是针对T-SQL基础的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础]02.联接查询 [T-SQL基础]03.子查询 [T-SQL基础 ...

  7. SQL server基础知识(表操作、数据约束、多表链接查询)

    SQL server基础知识 一.基础知识 (1).存储结构:数据库->表->数据 (2).管理数据库 增加:create database 数据库名称 删除:drop database ...

  8. 15个初学者必看的基础SQL查询语句

    本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文将分享15个初学者必看的基础SQL查询语句,都很基础,但是你不一定都会,所以好好看看吧. 1.创建表和数据插 ...

  9. SQL高级查询基础

    1.UNION,EXCEPT,INTERSECT运算符 A,UNION 运算符 UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表. ...

  10. MySQL 笔记整理(1) --基础架构,一条SQL查询语句如何执行

    最近在学习林晓斌(丁奇)老师的<MySQL实战45讲>,受益匪浅,做一些笔记整理一下,帮助学习.如果有小伙伴感兴趣的话推荐原版课程,很不错. 1) --基础架构,一条SQL查询语句如何执行 ...

随机推荐

  1. Shiro_DelegatingFilterProxy

    1.DelegatingFilterProxy实际上是Filter的一个代理对象.默认情况下,Spring会到IOC容器中查找与<filter-name>对应的filter bean.也可 ...

  2. pat甲级 1107. Social Clusters (30)

    When register on a social network, you are always asked to specify your hobbies in order to find som ...

  3. DJANGO中如何用邮箱来登陆?

    就是另一个不同的登陆backend. 而DJANGO会尝不同的方式,哪个成功就用哪个 authentication.py from django.contrib.auth.models import ...

  4. kendo grid dropdownlist 联动 cascading

    之前是无法联动的 后来将html页面中的 //$('<input required data-text-field="CompanyName" data-value-fiel ...

  5. CODEVS——T 2956 排队问题

    http://codevs.cn/problem/2956/  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Descri ...

  6. mysql 中间件

    http://f.dataguru.cn/thread-543718-1-1.html mysql-proxy是官方提供的mysql中间件产品可以实现负载平衡,读写分离,failover等,但其不支持 ...

  7. springboot启动mybatis

    初期开发了generator可以根据表结果自动生产实体类.配置文件和dao层代码,可以减轻一部分开发量:后期也进行了大量的优化可以使用注解了,自动管理dao层和配置文件等,发展到最顶端就是今天要讲的这 ...

  8. wikioi 1029 中序遍历总数

    题意:给出前序遍历和后序遍历,求总共同拥有多少种中序遍历的可能. 思路: 对于一个节点.当且仅当它仅有一棵子树时,在保证先序和后序同样的前提下,才可能有不同的中序(它的子树可在左或右,所以有2种): ...

  9. Powershell远程在Azure A7虚拟机执行Java JVM失败

    近期.使用Powershell脚本在A7 (8核,56G内存)配置的 Azure VM(Virtual Machine.虚拟机)上远程运行Java JVM时 (java.exe -version).总 ...

  10. LeetCode 953. Verifying an Alien Dictionary (验证外星语词典)

    题目标签:HashMap 题目给了我们一个 order 和 words array,让我们依照order 来判断 words array 是否排序. 利用hashmap 把order 存入 map, ...