gpt4 book ai didi

SQL 选择查询,其中所有行必须具有相等的值

转载 作者:行者123 更新时间:2023-11-29 02:06:35 24 4
gpt4 key购买 nike

我需要根据订单列表生成账单。

我有一个查询,其中我获得了所有尚未支付的订单 (paid_date = null),但问题是某些订单具有不同的税码。现在我只能在该查询中合并具有相同税码的订单。

我在想下面这样的事情,但这显然行不通:

SELECT * from orders 
WHERE paid_date IS NULL AND tax_code = MAX(tax_code);

几乎就像一个逆 Distinct。

更新:
对不起,我想问题并不清楚。我不是在寻找税法。我正在查找所有具有相同税码的订单列表。但我不在乎它是哪个代码。这实际上只是一种安全措施,通常所有税法都是相同的,但在极少数情况下它们是不同的。在这种情况下,用户需要生成 2 个单独的账单。

有什么简单的想法吗?

最佳答案

您将需要确定除税码之外保持一致的另一列,例如,可能是 customer_ID(例如);

获取当前客户的税码列表:

SELECT customer_ID, tax_code
FROM Orders
WHERE customer_ID = 'some customer ID'
GROUP BY customer_ID, tax_code

上面的查询将返回不同行的数量,所以如果有 2 个 tax_codes;然后得到2行,需要生成2张账单;

然后你可以像别人展示的那样查询:

SELECT * FROM Orders
WHERE paid_date IS NULL
AND tax_code = 'first tax code from your first query'

这将涉及到 DB 的多次旅行。或者,您可以编写一个存储过程,利用临时表,并返回多个集合(多个 SELECT 语句),每个集合包含一个按 tax_code 排列的订单表格列表。

或者,如果您使用的是 SQL(不了解 MySQL),您可以编写 SQL XML 查询,它将按 customer_id 和 tax_code 返回分层数据。

这有帮助吗?

关于SQL 选择查询,其中所有行必须具有相等的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4808423/

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