当前位置: 首页 > 面试题库 >

我该如何由父母然后由孩子订购?

吴欣悦
2023-03-14
问题内容

我试图以这样一种方式编写SQL Server
2008查询,以便可以根据需要循环遍历输出和输出标头。我已经多次以错误的方式完成了这些工作,并让ColdFusion在页面中进行了艰苦的工作,但是需要在SQL
Server中完成。

FeatureID ParentID Feature
--------------------------
1         0        Apple      
2         0        Boy 
3         2        Charles
4         1        Daddy
5         2        Envelope
6         1        Frankfurter

我希望查询结果集如下所示:

FeatureID ParentID Feature
--------------------------
1         0        Apple      
4         1        Daddy
6         1        Frankfurter
2         0        Boy 
3         2        Charles
5         2        Envelope

如果ParentID为0,则表示它是主要类别。如果ParentID大于0,则表示它是次要类别,是父级的子级。

因此,父母需要订购A-Z,而孩子则需要订购AZ。

您能帮我正确订购吗?

SELECT FeatureID, ParentID, Feature
FROM Features
ORDER BY

问题答案:

根据您的评论,如果您知道只有两个级别,那么有一个简单的解决方案:

select  *
from    @Features feat
order by
        case 
        when ParentID = 0 
        then Feature 
        else    (
                select  Feature 
                from    @Features parent 
                where   parent.FeatureID = feat.ParentID
                ) 
        end
,       case when ParentID = 0 then 1 end desc
,       Feature
  1. 按根元素的名称排序:对于根,这是“功能”列。对于孩子,请使用子查询查找根的名称。
  2. 在根上排序根
  3. 按名称对孩子进行排序

SE Data的示例。



 类似资料:
  • 问题内容: 早上好, 我在工作中继承了一些旧代码,并且使用的是一种非常不寻常的设计模式。我在论坛上唯一可以找到的类似模式的参考资料是在这里。情况是原始设计者有一个泛型父类(不是抽象类),该类具有静态工厂方法,该方法直接引用子类。 这是这种编码样式的示例,可在旧版代码的多个地方找到: 其中Log4JLoggerFactory和LogBackLoggerFactory扩展了LoggerFactory。

  • 我怀疑这很容易,但我不能让它像我想的那样工作。我正在使用我的Firebase数据库的查询信息引用数据库ref。下面的代码工作得很好,但我不能在Match_01中硬编码(这纯粹是为了让代码工作)。 我需要做的是使用已传递到片段的 matchID 并使用 equalTo 而不是引用最终的子节点。 但这不起作用,我无法将最后一个子引用换成订单ByChild引用。 感谢所有的帮助。

  • 问题内容: 我的索引中有与- 相关的文档,并希望获取按孩子数排序的父母名单。有什么办法吗?我正在使用1.5.1 现在,通过使用功能,我可以轻松获得子文档的数量以及父查询的结果,但是似乎无法从脚本或搜索/评分功能访问值。有任何想法吗? 问题答案: 好吧,我终于找到了答案。感谢@doctorcal在#elasticsearch IRC 上的提示 正如我在这个问题提到的,我们可以使用每个家长让孩子的名单

  • 我一直在将代码从JIT转换到D3,并使用树布局。我已从中复制了代码http://mbostock.github.com/d3/talk/20111018/tree.html使用我的树数据,但我想做更多。 在我的例子中,我想创建子节点,这些子节点合并回一个较低级别的父节点,我意识到这更像是一个有向图结构,但是希望树能够适应这一点(即注意子节点之间的公共id应该合并)。 因此,基本上,一棵树在从父母到

  • 问题内容: 我在这里有一个简单的设置: 我有一个父组件,该父组件有2个子组件。在第一个子组件中:用户更改输入的值。然后,该更改的值将是我想要从该孩子传递给父对象的道具,以便可以将其传递给与同一父组件相连的另一个孩子。 当前设置的这个,请查看 从用户输入到UI更改的流程:1.在“ Child 1”中:调整一个滑块,将onChange值传递给父组件;2.将此属性(新的滑块值)传递给Parent组件,以

  • 问题内容: 最初,我一直在尝试获取父母的名单以及每个父母的一个最近的孩子。我已经知道如何使用以下查询 但是问题是,结果不包括没有孩子的父母。添加也无济于事。所以我想我可以对所有没有孩子的父母进行查询,然后将这两个查询合并为一个查询。但是我在建立这样的查询时遇到了麻烦。将不胜感激任何建议。 问题答案: 这是您的查询: