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

MYSQL联盟订购

乜思淼
2023-03-14
问题内容

是否可以对第一个查询进行排序并保留返回的行作为第一行,而不对第二个查询进行排序。(如果有道理)

我当前查询的一个示例是:

SELECT
    *
FROM 
    Devices
WHERE
    Live = 'true'
    AND Category = 'apple'
ORDER BY
    ListOrder
UNION
SELECT
        *
    FROM
        Devices
    WHERE
        DeviceLive = 'true'

我希望“苹果”类别下的设备将按照该列表的顺序进行组织,并位于其他设备上方的列表顶部。但这似乎使两个查询混杂在一起。


问题答案:

您需要引入一个人工排序键。就像是:

SELECT
    *, 1 as SortKey
FROM 
    Devices
WHERE
    Live = 'true'
    AND Category = 'apple'
UNION
SELECT
        *, 2 as SortKey
    FROM
        Devices
    WHERE
        DeviceLive = 'true'
ORDER BY SortKey, ListOrder


 类似资料:
  • 旨在帮助世界各地的组织和个人协作创建 IBM Lotus Notes/Domino 应用程序,并将它们发布为开源软件” —— 这是来自 OpenNTF 的任务说明。 OpenNTF 是 IBM® Lotus Notes® 和 Lotus® Domino® 社区成员在 2002 年发起的。从此之后,60,000 名用户注册了 OpenNTF,并开始下载代码。其中涵盖 250 多个开源项目和 800

  • 影视联盟 v1.0(ASP版)带后台版 首先感谢tbun 免费提供,而且代码是明文,你爱怎么改就怎么改,如果改到没办法用了,你就别来找我。 同样拥有强大的后台管理功能,管理界面清爽美观,代码干净简洁!各大搜索引擎收录良好!程序还带有防SQL注入及跨站攻击功能,后台实现:网站初始设置、网站公告管理、网站SEO优化管理、站点 广告管理、服务器信息探测、 站长 工具包等功能。并实现前台与后台完全分离,可

  • 问题内容: 使用hibernate实现联合查询,我必须采取什么替代方法?我知道hibernate状态目前不支持联合查询,现在我看到的建立联合的唯一方法是使用视图表。 另一个选择是使用普通的jdbc,但是这样一来,我将失去所有示例/条件查询的功能,以及hibernate对表/列执行的hibernate映射验证。 问题答案: 使用VIEW。可以使用实体名称将相同的类映射到不同的表/视图,因此您几乎不需

  • 此操作将两个或多个形状作为输入,并返回它们占用的区域,如下所示。 您可以使用名为union()的方法对形状执行并集操作。 由于这是一个静态方法,您应该使用类名(Shape或其子类)来调用它,如下所示。 Shape shape = Shape.subtract(circle1, circle2); 例子 (Example) 以下是联合操作的示例。 在这里,我们绘制两个圆圈并对它们执行并集操作。

  • New in version 0.67: Dumpling Ceph 从 0.67 Dumpling 起支持加入 Ceph 对象网关联盟,可加入多个 region 、或一个 region 内的多个域。 Region: region 是地理空间的逻辑划分,它包含一个或多个域。一个包含多个 region 的集群必须指定一个主 region 。 Zone: 域是一个或多个 Ceph 对象网关例程的逻辑分

  • 问题内容: 我已经搜索过,但没有找到明确的答案。以下哪一项对SQL Server的性能更好: 或者… 我尝试过同时运行这两个程序,但是很难确定。我会很高兴地解释一个为什么比另一个更快,或者这取决于情况。 问题答案: 您的两个查询不做相同的事情。特别是,如果两个表中的值重复,则第一个将返回重复的行。 如果要在其他两个表中的任何一个中查找行,我建议使用: 并且,在和中都创建索引。 您的原始查询哪个更快