首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按字母顺序从QoQ结果列排序

按字母顺序从QoQ结果列排序
EN

Stack Overflow用户
提问于 2015-04-08 13:48:02
回答 1查看 349关注 0票数 0

我有一个从SP返回的结果集,然后在QoQ中操作这个结果集。结果按ABCabc顺序显示。我要按AaBbCc顺序排列。

例如,假设“名称”列包含值"Steve、Andy、anuj、bill、Mike“。当我按名称排序时,结果按以下顺序列出:

  • 安迪,迈克,史蒂夫,阿努伊,比尔

而不是我想要的命令,即:

  • 安迪,阿努伊,比尔,迈克,史蒂夫“
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-08 14:56:30

解决这一问题的一种方法是选择列,强制其向下或上部,然后在该列上按顺序排列。这个例子在CF9和CF11中适用于我。请原谅那些快速而粗糙的代码,但只是鞭打它以显示命令的工作:

代码语言:javascript
复制
<cfscript>
    qry = QueryNew("TESTING");
    QueryAddRow(qry); QuerySetCell(qry, "TESTING", "A");
    QueryAddRow(qry); QuerySetCell(qry, "TESTING", "B");
    QueryAddRow(qry); QuerySetCell(qry, "TESTING", "C");
    QueryAddRow(qry); QuerySetCell(qry, "TESTING", "a");
    QueryAddRow(qry); QuerySetCell(qry, "TESTING", "b");
    QueryAddRow(qry); QuerySetCell(qry, "TESTING", "c");
</cfscript>

<cfquery name="qry2" dbtype="query">
    SELECT TESTING, LOWER(TESTING) AS TMP FROM qry ORDER BY TMP</cfquery>

<cfoutput query="qry2">
    #TESTING#<br />
</cfoutput>

这给了我以下输出:

代码语言:javascript
复制
A
a
B
b
C
c

如果您要按顺序执行命令,而不执行较低或较高的操作,则最终得到的输出与您所面临的问题类似:

代码语言:javascript
复制
<cfquery name="qry3" dbtype="query">
    SELECT TESTING, LOWER(TESTING) AS TMP FROM qry ORDER BY TESTING</cfquery>

<cfoutput query="qry3">
    #TESTING#<br />
</cfoutput>

浏览器中的输出:

代码语言:javascript
复制
A
B
C
a
b
c
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29516547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档