`

表中记录查询排序随笔(sql server中order by使用方式小总结)

阅读更多



跟DB打交道,用得最多的是查询
既然查询就会有查询记录排序问题
我一直通过order by来解决
order by常用的使用方式我就不提了

项目的需求千变万化
让我们看看下面几个怪排序需求

--先创建一个表
create table ai(
id int not null,
no varchar(10) not null
)
go

--往表中插入数据
insert into ai
 select 105,'2'
 union all
 select 105,'1'
 union all
 select 103,'1'
 union all
 select 105,'4'
go

--查询效果如下:
select * from ai
go
id          no        
----------- ----------
105         2
105         1
103         1
105         4


i.
--要求的查询结果如下
--即要求no列的数据按'4','1','2'排列
id          no        
----------- ----------
105         4
105         1
103         1
105         2



--解决方案1
--利用函数CHARINDEX
select * from ai
 order by charindex(no,'4,1,2')

--解决方案2
--利用函数case
select * from ai
 order by case when no='4' then 1
        when no='1' then 2
                      when no='2' then 3
                 end

--解决方案3
--利用UNION 运算符
select * from ai
 where no='4'
union all
select * from ai
 where no='1'
union all
select * from ai
 where no='2'

ii.
--查询要求指定no='4'排第一行,其他的行随机排序
id          no        
----------- ----------
105         4
105         2
105         1
103         1

--解决方案
select * from ai
 order by case when no='4' then 1
   else 1+rand()
  end

iii.
--查询要求所有行随机排序

--解决方案
select * from ai
 order by newid()


iiii
--有一表ab有列i,其中数据如下:
i varchar(10)
a1
a10
a101
a5
p4
p41
p5


--现在要求列i中数据先按字母排序,再按数字排序
--效果如下:
a1
a5
a10
a101
p4
p5
p41

--解决方案
select * from ab
 order by left(i,1),convert(int,substring(i,2,8000))




希望上面提到的知识对你有所提示

当然欢迎交流和指正



 

author:aierong

blog:http://www.cnblogs.com/aierong

email:aierong@126.com

 



分享到:
评论

相关推荐

    黑白风经典电影书籍语录记录生活感慨心情随笔小程序源码.zip

    这个标题表明,我们正在处理的是一个小程序的源代码,这个小程序的主要功能是记录和展示经典电影与书籍中的语录,同时也允许用户记录自己的生活感慨和心情随笔。"黑白风"暗示了该程序可能采用简洁的黑白色调设计,给...

    Ibatis学习随笔.doc

    在`getProduct`方法中,`parameterMap`和`resultMap`的使用使得我们可以方便地将SQL查询结果映射到`Product`对象。 总结起来,Ibatis通过XML配置文件实现了SQL语句的声明式管理,提供了灵活的参数映射和结果集转换...

    高中随笔,高中随笔200字(3篇).doc

    在人的一生中,高中时期是一个充满青春活力和思想探索的重要阶段。这一时期的青年人开始尝试对世界、对自我进行...无论是在文学表达、哲学探索还是生活智慧方面,这些随笔都是对生命、使命和心灵世界探索的宝贵记录。

    java记录随笔

    Java 记录随笔 Java 记录随笔是关于 Java 软件架构设计的笔记,涵盖了软件架构的基本原则、当前流行的技术、数据库存储结构、Web 界面用户接口层、业务层架构、持久层技术、XML 结构化信息传输和存储的重要性等多个...

    高中随笔,高中随笔200字(3篇)精选.doc

    在高中阶段,随笔写作不仅是学生的一项基本功,更是他们心灵成长和智慧启迪的重要途径。随笔,顾名思义,是随性而发的书写,它要求学生以简洁明了的笔触表达自己的所思所感,同时,又需展现出一定的深度和独到的见解...

    使用bootstraptable插件实现表格记录的查询、分页、排序操作

    在业务系统开发中,对表格记录的查询、分页、排序等处理是非常常见的,在Web开发中,可以采用很多功能强大的插件来满足要求,且能极大的提高开发效率,本随笔介绍这个bootstrap-table是一款非常有名的开源表格插件,...

    生活随笔学习总结.doc

    这篇文档实际上是对个人学习生活感悟的总结,虽然标签为"方案",但内容更偏向于个人体验和情感表达。从这段文字中,我们可以提炼出以下几个与学习、生活和自我认知相关的知识点: 1. 学习环境的影响:作者提到在...

    [小忆故乡随笔]故乡随笔.rar

    【小忆故乡随笔】是一本充满情感温度与文化深度的随笔集,它不仅仅是作者对故乡记忆的一次深情回顾,更是一次对乡土文化的深刻反思和记录。在这个快节奏的社会里,故乡的印象往往变得模糊,而这本书就像一座桥梁,...

    中班教育随笔记录《“爱心树”的魔力》.doc

    《“爱心树”的魔力》这篇中班教育随笔,主要讲述了一种创新的教育方法,旨在培养孩子们的关爱之心和良好的行为习惯。通过设立一棵象征性的“爱心树”,教师鼓励孩子们在日常生活中做出善良的行为,并将这些行为记录...

    小班教师教育随笔《别让孩子在抱怨中成长》.doc

    最近,一篇名为《别让孩子在抱怨中成长》的小班教师教育随笔,深入探讨了教育方式对儿童自尊心和自信心的影响,提出了鼓励教育的重要性。 文章通过两个孩子的真实案例,向读者展示了不同的教育方式对孩子未来成长的...

    生活随笔学习总结.docx

    本文将从作者的个人生活随笔中提炼与技术相关的主题,并对这些主题进行深入探讨。 首先,生物学的学习与观察是作者在随笔中提到的一个重要方面。通过观察昆虫,作者不仅对生物学产生了浓厚的兴趣,还意识到科学学习...

    中班教育随笔记录《音乐教学中的几点反思》.doc

    中班教育随笔记录《音乐教学中的几点反思》.doc

    Ibatis学习随笔

    本篇随笔将深入探讨Ibatis的核心概念、使用方法以及它在实际开发中的应用。 一、Ibatis概述 Ibatis是由Apache软件基金会维护的项目,它的设计目标是简化Java应用与数据库之间的交互,避免了传统的JDBC代码编写过程...

    中年级数学教学随笔.pdf

    总之,《中年级数学教学随笔》不仅记录了作者在教学实践中的思考和尝试,更体现出作者对现代教育理念的深刻理解和积极实践。个性化教学、寓教于乐、成就感培养、多元评价、教师自我提升、基础教育重要性和情感关怀...

    中班教育随笔记录200篇.doc

    中班教育随笔记录200篇.doc

    一年级语文教学随笔.pdf

    通过激发学生兴趣,灵活多样的教学方式,使用儿童化语言,适时的表扬,以及有效地课堂管理,教师能够引领这些初入小学的孩子们踏上愉快的学习之旅,培养他们对语文的热爱和对知识的渴望。在这个过程中,教师自身的...

    android 随笔40K

    开发者需要学习如何创建数据库表,执行SQL查询以及在Activity和数据库之间进行数据交换。 此外,Android应用的用户界面(UI)设计也是关键部分。XML布局文件用于定义屏幕上的元素和它们的排列方式。开发者需要学习...

    中小学语文教师教学随笔范文五篇示例.docx

    标题"中小学语文教师教学随笔范文五篇示例.docx"表明这是一个文档,其中包含5个不同的教学随笔样本,专门针对中小学阶段的语文教学。随笔通常是对教学实践的反思和感悟,是教师自我提升和教学经验分享的重要方式。...

Global site tag (gtag.js) - Google Analytics