gpt4 book ai didi

SQL - UNION,按顺序执行时优先于第一个选择语句

转载 作者:行者123 更新时间:2023-12-05 08:24:12 27 4
gpt4 key购买 nike

我试图首先打印出来自“GermanDB”数据库的结果,同时还显示来自波士顿数据库但不在德国数据库中的所有内容。这可以在一个查询中完成吗?

我的查询(粗体部分起作用但没有按照我想要的方式排序)

select * from (  
SELECT DISTINCT a.ProductRef
FROM GERMANDB.dbo.LOCATIONS AS a INNER JOIN GERMANDB.dbo.ITEMS AS b ON a.ProductRef = b.ProductRef
WHERE b.ACTIVE=1
) ta
UNION select * from
SELECT DISTINCT c.ProductRef
FROM BOSTONDB.dbo.LOCATIONS AS c INNER JOIN BOSTONDB.dbo.ITEMS AS d ON c.ProductRef = d.ProductRef
WHERE c.ACTIVE=1 (c.ProductRef NOT IN
(SELECT ProductRef FROM GERMANDB.dbo.ITEMS where ACTIVE=1))
) tb
order by ta.ProductRef** , tb.productRef

最佳答案

只需添加一个字段来表示优先级。像这样:

select *, 0 as Priority from (  
SELECT DISTINCT a.ProductRef
FROM GERMANDB.dbo.LOCATIONS AS a INNER JOIN GERMANDB.dbo.ITEMS AS b ON a.ProductRef = b.ProductRef
WHERE b.ACTIVE=1
) ta
UNION select *, 1 as Priority from
SELECT DISTINCT c.ProductRef
FROM BOSTONDB.dbo.LOCATIONS AS c INNER JOIN BOSTONDB.dbo.ITEMS AS d ON c.ProductRef = d.ProductRef
WHERE c.ACTIVE=1 (c.ProductRef NOT IN
(SELECT ProductRef FROM GERMANDB.dbo.ITEMS where ACTIVE=1))
) tb
order by Priority, ProductRef

关于SQL - UNION,按顺序执行时优先于第一个选择语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19146298/

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