关于 SQL 服务器中同一列的除法结果问题
Question about divide result from the same column in SQL Server
我正在尝试在 SQL 服务器中编写语句。我想要做的是获取以“R”结尾的列中计数记录的结果除以所有记录的计数。所以它基本上是一个列的语句,其中有一个语句“count (invoice) where Invoice like "%R" / count( Invoice)"
这是我的代码,没有除法计算。我只是想出了没有除法计算的语句。
SELECT
Invoice,
COUNT(ART_CURRENT__TRANSACTION.Invoice) AS Number_Revisions,
MAX(ART_CURRENT__TRANSACTION.[Customer]) AS "Customer",
MAX(ARM_MASTER__CUSTOMER.Name) AS "Name",
MAX(ART_CURRENT__TRANSACTION.[Job]) AS Job
FROM
ART_CURRENT__TRANSACTION
LEFT OUTER JOIN
ARM_MASTER__CUSTOMER ON ARM_MASTER__CUSTOMER.Customer = ART_CURRENT__TRANSACTION.Customer
WHERE
Invoice LIKE '%R'
GROUP BY
Invoice;
我想问的是如何添加一个列来计算以“R”结尾的发票数量/发票数量。
谢谢大家!
What I am trying to do is to get the result of count records in Columns end with "R" divide the count of all the records.
您似乎需要这样的计算:
SELECT AVG(CASE WHEN t.Invoice LIKE '%R' THEN 1.0 ELSE 0 END)
FROM ART_CURRENT__TRANSACTION t;
这假设 invoice
在事务 table 中。我认为你想做的事情不需要加入。
我正在尝试在 SQL 服务器中编写语句。我想要做的是获取以“R”结尾的列中计数记录的结果除以所有记录的计数。所以它基本上是一个列的语句,其中有一个语句“count (invoice) where Invoice like "%R" / count( Invoice)"
这是我的代码,没有除法计算。我只是想出了没有除法计算的语句。
SELECT
Invoice,
COUNT(ART_CURRENT__TRANSACTION.Invoice) AS Number_Revisions,
MAX(ART_CURRENT__TRANSACTION.[Customer]) AS "Customer",
MAX(ARM_MASTER__CUSTOMER.Name) AS "Name",
MAX(ART_CURRENT__TRANSACTION.[Job]) AS Job
FROM
ART_CURRENT__TRANSACTION
LEFT OUTER JOIN
ARM_MASTER__CUSTOMER ON ARM_MASTER__CUSTOMER.Customer = ART_CURRENT__TRANSACTION.Customer
WHERE
Invoice LIKE '%R'
GROUP BY
Invoice;
我想问的是如何添加一个列来计算以“R”结尾的发票数量/发票数量。
谢谢大家!
What I am trying to do is to get the result of count records in Columns end with "R" divide the count of all the records.
您似乎需要这样的计算:
SELECT AVG(CASE WHEN t.Invoice LIKE '%R' THEN 1.0 ELSE 0 END)
FROM ART_CURRENT__TRANSACTION t;
这假设 invoice
在事务 table 中。我认为你想做的事情不需要加入。