`
hb_keepmoving
  • 浏览: 226746 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

解决了一个SQL查询问题!

阅读更多

 

创建表的数据 
name codeid batchno
a    1      A
a    1      B
a    1      C
a    2      A
a    2      B
a    2      C
a    3      A
a    3      B
a    3      C
.....

b    1      A 
b    1      B 
b    1      C 
b    2      A 
b    2      B 
b    2      C 
b    3      A 
b    3      B 
b    3      C  

......

 

要得到最后的结果为:

a    1      A
a    2      B
a    3      C

.......

b    1      A 
b    2      B 
b    3      C

........

 

 

问题来源:http://www.iteye.com/problems/51078

 

我的解决过程:

 

CREATE TABLE TEST(tname VARCHAR(2),codeid NUMBER(20),bacthno VARCHAR(2));
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','1','A');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','1','B');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','1','C');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','2','A');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','2','B');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','2','C');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','3','A');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','3','B');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('a','3','C');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','1','A');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','1','B');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','1','C');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','2','A');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','2','B');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','2','C');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','3','A');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','3','B');
INSERT INTO TEST (tname,codeid,bacthno) VALUES  ('b','3','C');

SELECT * FROM TEST;

 

得到:

name codeid batchno
a    1      A
a    1      B
a    1      C
a    2      A
a    2      B
a    2      C
a    3      A
a    3      B
a    3      C 

b    1      A 
b    1      B 
b    1      C 
b    2      A 
b    2      B 
b    2      C 
b    3      A 
b    3      B 
b    3      C  


SELECT * FROM TEST T WHERE ASCII(T.BACTHNO)-T.CODEID=64 ORDER BY TNAME;

 

得到:

a    1      A
a    2      B
a    3      C

b    1      A 
b    2      B 
b    3      C

分享到:
评论

相关推荐

    SQLServer的性能调优:解决查询速度慢的五种方法

    本文主要通过一下几个方面介绍:使用SQLDMV查找慢速查询、通过APM解决方案查询报告、SQLServer扩展事件、SQLAzure查询性能洞察等相关内容。本文来自博客园,由火龙果软件Anna编辑、推荐。SQLServer的一个重要功能是...

    Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法

    Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法 Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法 Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法 Hibernate SQL...

    查询条件是text的解决办法-sql sql text 数据类型为text解决办法

    查询条件是text的解决办法-sql sql text 数据类型为text解决办法 高老师

    Microsoft SQL Server 2008技术内幕:T-SQL查询

    《Microsoft SQL Server 2008技术内幕:T-SQL查询》全面深入地介绍了Microsoft SQL Server 2008中高级T-SQL查询、性能优化等方面的内容,以及SQL Server 2008新增加的一些特性。主要内容包括SQL的基础理论、查询优化...

    Microsoft_SQL_Server_2005技术内幕:T-SQL查询.pdf

     深入理解T-SQL体系结构,充分利用高级T-SQL查询技术。  本书深入介绍了T-SQL的内部体系结构,揭示了基于集合的查询的强大威力,并包含大量来自专家们的参考和建议。通过本书提供的最佳实践和示例代码,数据库开发...

    SQL 高级查询技术

    除了前一章介绍的SQL基本功能之外,SQL还可以用来完成其他一些重要且复杂的操作。 对于全世界来说,不同的地点有不同的时间,不同地点的人可能操纵相同数据库中的数据。数据库中需要存储准确的数据,这些数据离不开...

    SQL高级查询语句关键时候解决问题的SQL语句

    SQL高级查询语句 有用的 关键时候解决问题的SQL语句 SQL高级查询语句 有用的 关键时候解决问题的SQL语句

    Microsoft SQL Server 2008技术内幕:T-SQL查询

    本书全面深入地介绍了Microsoft SQL Server 2008中高级T-SQL查询、性能优化等方面的内容,以及SQL Server 2008新增加的一些特性。主要内容包括SQL的基础理论、查询优化、查询算法及复杂度,以及在使用子查询、表...

    php mssql扩展SQL查询中文字段名解决方法

    一、问题: 数据库是MS SQLServer2000,要把SQLServer2000里的一张表的数据导入MySQL5,其中SQLServer2000表的字段以简体中文命名(强烈建议不要以中文做为字段名)。其实操作就是对SQLServer查询记录,插入到MySQL里...

    学习SQL查询语句,首先必须解决一个问题,数据问题

    学习SQL查询语句,首先必须解决一个问题,数据问题。这里为大家准备了完整的几个表的数据

    Microsoft SQL Server2005技术内幕:T-SQL查询(中文PDF版)part1

    该书解释并比较了sql server 2000和sql server 2005在数据库开发相关问题上的解决方案,深入讨论了sql server 2005中新增的t-sql编程特性,包含了大量的代码示例、表示例和逻辑难题以帮助数据库开发人员和管理员理解...

    关于SQL Server SQL语句查询分页数据的解决方案

    关于SQL Server SQL语句查询分页数据的解决方案

    Microsoft SQL Server 2008技术内幕:T-SQL查询(第二卷)

    《Microsoft SQL Server 2008技术内幕:T-SQL查询》内容丰富、文字简洁明快,列举的实例具有一定的难度,而且实用性很强,可以把它们作为解决实际问题的标准模式。阅读《Microsoft SQL Server 2008技术内幕:T-SQL...

    Microsoft SQL SERVER 2008技术内幕 T-SQL查询

    作为一本讲述T-SQL 高级查询的专业图书,本书旨在结合实践中的各种常见问题,教读者如何用SQL 作为语言工具来思考问题,揭示基于集合查询的强大威力。本书内容丰富、文字简洁明快,列举的实例具有一定的难度,而且...

    Mysql运行SQL语句中文乱码问题的解决方法

    网上很多关于mysql运行sql语句乱码的解决方法,都没有很好的解决这个问题,经本人不断努力,不断尝试,终于解决这个问题。如有这个问题出现,可参考此文档。

    SQL Prompt SQL查询分析器辅助工具 超强的提示功能

    它的主要功能就是自动检测SQL查询分析器,当我们在查询分析器中输入内容的时候,它会自动去找到对应的表名、字段、存储过程或视图等,并出现一个候选列表,真的很方便,自动完成的功能一直是SQL欠缺的,好像SQL2005...

    解决SQL死锁问题.sql

    SQL server大并发时软件出现卡顿,需要查询是什么SQL执行时引起的卡顿,同时具有干掉死锁进程,非常实用

    Microsoft SQL Server 2005技术内幕:T-SQL查询

    第1章 T-SQL查询和编程基础  1.1 理论背景  1.2 SQL SERVER体系结构  1.3 创建表和定义数据完整性  1.4 总结 第2章 单表查询  2.1 SELECT语句的元素  2.2 谓词和运算符  2.3 CASE表达式  2.4 NULL...

    Sql 查询性能优化

    使用性能监视器、SQL Trace以及动态管理视图和函数建立性能基线 理解一般系统中发生瓶颈的...SQL Server 2008查询性能优化》不是理论书籍,它的目的是帮助你避免数据库出现性能低下的状况,它还能帮助你保住你的工作。

    解决Java和SQL数据库通信乱码问题

    自己写的一个类,解决Java和SQL Server通信出现乱码的问题,使用方法写在注释里了。

Global site tag (gtag.js) - Google Analytics