gpt4 book ai didi

mysql - 带分组和 mySql Order By 的输出

转载 作者:行者123 更新时间:2023-11-29 09:54:14 25 4
gpt4 key购买 nike

出于演示目的,假设我有以下查询:

SELECT a_label, aID, b_label, bID, c_label, cID, d_label, dID, orderByA, orderByB, orderByC 
FROM table
ORDER BY orderByA, orderByB, orderByC

在显示端,可以对LI进行排序,并将其对应的位置存储在相应的表列中。

在我的输出中,我正在循环数据并且需要使用 <cfoutput query="qryName" group="aID">然后一个子组正在使用 <cfoutput group="bID">与另一个子组使用 <cfoutput group="cID">等等。

我的问题是我无法弄清楚查询应该是什么样子的组合,以便我的输出能够正确分组。我是否需要对 sql 查询进行分组或将其保留在 cfm 代码中?那么 order by 呢?

我想我要问的是你如何知道分组何时属于查询与代码?

更新了一些 CFM 代码

<cfoutput query="#aw#" group="cID">
<ul class="listItem pItem">
<cfoutput group="pID">
<li class="listItem pTitle" data-cid="#aw.cID#" data-pid="#aw.pID#" data-wid="#aw.wID#">
<i class="glyphicon glyphicon-chevron-right rotate wToggle"></i> <input type="checkbox" name="p" class=""> #aw.pLabel#
<ul class="listItem wItem hide">
<cfoutput group="wID">
<li class="listItem wTitle" id="w_#aw.cID#_#aw.pID#_#aw.wid#_#aw.woaid#">
<i class="glyphicon glyphicon-chevron-right rotate dToggle font-blue-madison"></i> <input type="checkbox" name="w" class=""> #aw.wLabel#
<ul class="listItem dItem hide">
<cfoutput>
<li class="listItem dTitle" id="d_#aw.cID#_#aw.pID#_#aw.wID#_#aw.dID#_#aw.woaid#">
<input type="checkbox" name="d" class="child"> #aw.dID#
</li>
</cfoutput>
</ul>
</li>
</cfoutput>
</ul>
</li>
</cfoutput>
</ul>
</cfoutput>

用户可以将项目从一个部分拖动到另一部分,但前提是这些部分处于同一级别。例如,dItem只能移动到另一个具有 dItem 的容器。同样,wItem只能移到另一个wItem等等。

我正在处理 sql 查询并将更新此问题。我一次从一个级别开始,而不是同时开始整个查询(使其变得很小)。

更新我想我发现了问题,错误的数据。某些项目在其各自的 orderBy* 中没有值。因此分组的项目在子组中的顺序不正确。新添加项目的默认值为 NULL但我认为这需要一个不同的值。 sortby 是否有最佳实践默认值列?

更新ii我发现这个问题,Insert and set value with max()+1 problems ,我可以在添加新项目时实现它。这样它就会出现在列表的末尾。

最佳答案

明白了!我的<cfoutput...group=...需要按与 GROUP BY 中相同的列(和顺序)进行匹配/分组条款。一旦我使它们匹配,我的输出就与我在数据库中看到的相匹配。

更新了 SQL
SELECT a_label, aID, b_label, bID, c_label, cID, d_label, dID, orderByA, orderByB, orderByC
FROM table
ORDER BY cID, orderByA, orderByB, orderByC

orderByC 只是为了更好的衡量,最后一个 <cfoutput> 不需要分组标签。

更新了 CFM(删除了非必要代码以突出解决方案

<cfoutput query="#aw#" group="cID">
<ul class="listItem pItem">
<cfoutput group="orderByA">
<li class="listItem pTitle">
<i class="glyphicon glyphicon-chevron-right"></i> #aw.pLabel#
<ul class="listItem wItem hide">
<cfoutput group="orderByB">
<li class="listItem wTitle">
<i class="glyphicon glyphicon-chevron-right"></i>#aw.wLabel#
<ul class="listItem dItem hide">
<cfoutput>
<li class="listItem dTitle">
#aw.dID#
</li>
</cfoutput>
</ul>
</li>
</cfoutput>
</ul>
</li>
</cfoutput>
</ul>

关于mysql - 带分组和 mySql Order By 的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54175234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com