sqlserver中的 数据转换 与 子查询

原文:sqlserver中的 数据转换 与 子查询

数据类型转换

 

--cast转换

select CAST(1.23 as int)

 

 

 

select CAST(1.2345 as decimal(18,2))

 

 

 

select CAST(123 as varchar(10))     整型转换成字符串型

 

 

 

select CAST('123.333' as decimal(18,4))    字符串型转换成浮点型

 

 

--convert转换

select CONVERT(int,12.345)

 

 

 

 

 

 

 

子查询(嵌套查询)

---查找男同志里面年龄最大的人的全部信息(top 1的意思是取排列为第一行的全部信息)

select top 1* from haha where sex='男'order by age desc

 

--子查询(将原来表中的数字,转换成另一个表的数据)

 

---查找人数最多的部门的人中岁的人的信息(大括号内命令的意思是查询某个部门的名称)

select * from haha where bumen =(select top 1 bumen from haha group by bumen order by COUNT(*) desc)and age=35

 

子查询的应用(5条数据为一页):

---查看一个表能够分成多少页

select CEILING (COUNT(*)/5.0) from haha     celing地板的意思,小数点后一位只要不是0就会进1

 

---分页代码,前面top代表一页有多少条数据,后面代码是过滤当前页面的前面页面的数据

select top 5* from haha where code not in (select top 10 code from haha)

这是显示第三页,修改页数只修改括号内的top后面的数即可(每5条数据为一页)

时间: 2024-10-09 22:28:12

sqlserver中的 数据转换 与 子查询的相关文章

数据库的数据查询中使用JOIN及子查询有什么缺陷,该如何改善

问题描述 数据库的数据查询中使用JOIN及子查询有什么缺陷,该如何改善 数据库的数据查询中使用JOIN及子查询有什么缺陷,该如何改善 解决方案 泛泛说不好说,关键看你的查询算法.特别是子查询,用的不好在时间和空间上开销很大.这个和编程中的算法类似,你需要对查询本身和算法本身要有理解,这个改善不是查询本身的改善.而是寻求更高效的算法. 解决方案二: http://segmentfault.com/q/1010000000134455 最重要的还是设计好数据库schema等,来减少数据的混合查询 解

SQL Server中INNER JOIN与子查询IN的性能测试

这个月碰到几个人问我关于"SQL SERVER中INNER JOIN 与 IN两种写法的性能孰优孰劣?"这个问题.其实这个概括起来就是SQL Server中INNER JOIN与子查询孰优孰劣(IN是子查询的实现方式之一,本篇还是只对比INNER JOIN与子查询IN的性能,如果展开INNER JOIN与子查询性能对比,范围太大了,没法一一详述).下面这篇文章,我们就INNER JOIN与子查询IN这两种写法孰优孰劣,在不同场景下进行一下测试对比一下,希望能解答你心中的疑惑.   下面

生产库中遇到mysql的子查询

使用过oracle或者其他关系数据库的DBA或者开发人员都有这样的经验,在子查询上都认为数据库已经做过优化,能够很好的选择驱动表执行,然后在把该经验移植到mysql数据库上,但是不幸的是,mysql在子查询的处理上有可能会让你大失所望,在我们的生产系统上就由于碰到了这个问题: select  i_id, sum(i_sell) as i_sell from table_data where i_id in (select i_id from table_data where Gmt_create

在MySQL中使用子查询和标量子查询的基本操作教程_Mysql

MySQL 子查询子查询是将一个 SELECT 语句的查询结果作为中间结果,供另一个 SQL 语句调用.MySQL 支持 SQL 标准要求的所有子查询格式和操作,也扩展了特有的几种特性. 子查询没有固定的语法,一个子查询的例子如下: SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1) 对应的两个数据表如下: article 文章表: user 用户表: 查询返回结果如下所示: 在该例子中,首先通过子查询语

MySQL中列子查询与行子查询操作的学习教程_Mysql

MySQL 列子查询及 IN.ANY.SOME 和 ALL 操作符的使用MySQL 列子查询 列子查询是指子查询返回的结果集是 N 行一列,该结果通常来自对表的某个字段查询返回. 一个列子查询的例子如下: SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1) 列子查询中使用 IN.ANY.SOME 和 ALL 操作符 由于列子查询返回的结果集是 N 行一列,因此不能直接使用 = > < >= <

sqlserver中delete、update中使用表别名和oracle的区别_MsSql

昨天发现程序中数据分析的结果不对,重新进行分析后,原数据仍在,有值的字段被累计.心说,不对啊,是重新生成记录后才分析的啊.难道忘了DELETE了?查代码,发现有删除语句.于是在查询分析器中执行,报错.反复试几次,明白了,Delete From不认表名别名!回头想下,当初程序改完后主要是在Oracle中测的,SQLServer一直没细测. 之所以要用别名,是因为where条件中需要用到子查询写一些条件,下面不写那么复杂,仅说明一下问题. 结论: (ORACLE适用)    DELETE FROM

sqlserver中delete、update中使用表别名和oracle的区别

昨天发现程序中数据分析的结果不对,重新进行分析后,原数据仍在,有值的字段被累计.心说,不对啊,是重新生成记录后才分析的啊.难道忘了DELETE了?查代码,发现有删除语句.于是在查询分析器中执行,报错.反复试几次,明白了,Delete From不认表名别名!回头想下,当初程序改完后主要是在Oracle中测的,SQLServer一直没细测. 之所以要用别名,是因为where条件中需要用到子查询写一些条件,下面不写那么复杂,仅说明一下问题. 结论: (ORACLE适用)    DELETE FROM

sql性能优化-mysql子查询是否被重复执行?

问题描述 mysql子查询是否被重复执行? 请教!mysql返回固定结果集时,是否被重复执行 例如1:select t.*,(select count(1) from table01) from table01 t; 例如2:select t.*,(select count(1) from table01 t2 where t2.key=t1.key) from table01 t1 ;--像这种嵌套的子查询是会被重复执行的. 疑问:上面例子1中的子查询遍历过程中,都是固定结果集,会被重复执行N

SQL应用与开发:(七)数据操作 &amp;#183; 查 &amp;#183; (三)使用子查询访问和修改数据

3.使用子查询访问和修改数据 子查询和连接查询一样提供了使用单个查询访问多个表中的数据的方法.子查询在其他结果的基础上提供一种有效地方式来表示WHERE子句的条件.子查询是一个SELECT语句,它定义在SELECT.INSERT.UPDATE或DELECT语句或者另一个子查询中.子查询的SELECT语句可与外部查询指向不同的表. 嵌套的子查询或嵌套的SELECT语句是指包含一个或多个子查询的SELECT语句.子查询可嵌套在外部的SELECT.INSERT.UPDATE或DELECT语句的WHER