蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年8月25日 8:28

[asp]order by的问题(已解决)

数据表table1结构内容如下:
ID | Title | Intro
-----------------------------------------
1 | ABCAA | ABCDEFABCDA
2 | ABCDA | ABCDEFA
3 | ABCDE | ABCD
我想实现查询:
查询table1表,并返回按Title或Intro中包含“A”字符最多的记录进行排序。
请问select * from table1 order by.......后面该怎么写,如何实现以上功能?

[asp]order by的问题

请大家帮忙!!!
up

[asp]order by的问题

没想到更好的办法,可够修改数据库结构避免现在的情况呢?

[asp]order by的问题

不知道用like 'A'能不能实现,偶也没想到方法:(
楼主为什么要实现这种功能呢?

[asp]order by的问题


如果记录不多提取记录出来用脚本排序也行。

[asp]order by的问题

谢谢大家。

我要实现这个只是程序的一部分功能。
请问如果是要修改数据库结构,如何操作?

记录很多。如果用脚本排序,那样效率将会很低。

我听说可以用存储过程来解决,但由于数据库是AC的,所以不能用SQL的存储过程。

[asp]order by的问题

难道真的无法实现这个功能吗?

[asp]order by的问题

晕倒了~~~

再UP一下。。。

[asp]order by的问题

可以按A拆分字符串,就是不知道有没有内置的方法了。

[asp]order by的问题

什么样内置的方法?

请说明,好吗?

[asp]order by的问题

sql里面应该没有吧-.-
我觉得还是全读出来再判读instr(xxx,"a")应该可以

[asp]order by的问题

试试
select
        *
from
      table1 order by ( len(Title)- len(replace(Title,'A','')))+(len(Intro)  - (len(replace(Intro,'A','')) )

[asp]order by的问题

并返回按Title或Intro中包含“A”字符最多的记录进行排序
lz
这个  或  是什么意思?  
要是比较Title和Intro这两个字段中共有多少A
楼上的got 的写法就应该可以吧。


select    tablename.* from tablename order by length(Title||Intro)- length(replace(Title||Intro,'A','') ) desc

[asp]order by的问题

to:  ef4948
意思是用sql把所有记录查询出来后,再判断吗?可是如何来按要求排序呢?

to :got
这样不行,order by 后面要接字段名才可以的。

请赐教。。

[asp]order by的问题

select
( len(Title)- len(replace(Title,'A','')))+(len(Intro) - (len(replace(Intro,'A','')) ) as lenOrder,
*
from
table1 order by lenOrder

[asp]order by的问题

[b]got[/b]

[b]真是太感谢你了!!![/b]

这句查询,个人觉得很经典。以前从未见过此种用法(本人见识浅)。。

真是前无古人,后无来者呀!!!!

谢谢各位了。。。

确实这句sql语句值得学习

注:

此语句:ASP+SQL可通过。。
           Access下无法通过,不知道是什么原因。提示replace函数未定义。

不知道各位是否可以解决。

这种情况应该是sql和access提供的函数不一样.也就是说sql中提供了replace函数而access没有这个函数




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com