Mysql 在另一个phpmyadmin中运行一个查询
我是SQL和phpmyadmin的新手,如果不清楚,我道歉。我试图使用一个查询作为来自另一个查询的数据源,但从SELECT中得到一个解析错误。这就是我要做的Mysql 在另一个phpmyadmin中运行一个查询,mysql,sql,phpmyadmin,Mysql,Sql,Phpmyadmin,我是SQL和phpmyadmin的新手,如果不清楚,我道歉。我试图使用一个查询作为来自另一个查询的数据源,但从SELECT中得到一个解析错误。这就是我要做的 select CUS_CODE, COUNT(LINE.INV_NUMBER) as "Number of Invoices", AVG("Invoice Total") as "Average Invoice Amount", MAX("Invoice Total") as "Max Invoice Amount"
select CUS_CODE,
COUNT(LINE.INV_NUMBER) as "Number of Invoices",
AVG("Invoice Total") as "Average Invoice Amount",
MAX("Invoice Total") as "Max Invoice Amount",
MIN("Invoice Total") as "Min Invoice Amount",
Sum("Invoice Total") as "Total Customer Purchases"
from (
select CUS_CODE,
LINE.INV_NUMBER as INV_NUMBER,
Sum(LINE.LINE_UNITS * LINE.LINE_PRICE) as "Invoice Total"
from INVOICE,
LINE
where INVOICE.INV_NUMBER = LINE.INV_NUMBER
group by CUS_CODE,
LINE.INV_NUMBER
)
group by CUS_CODE;
试试这个:
select cus_code,
count(inv_number) as number_of_invoices,
avg(invoice_total) as average_invoice_amount,
max(invoice_total) as max_invoice_amount,
min(invoice_total) as min_invoice_amount,
sum(invoice_total) as total_customer_purchases
from (
select cus_code,
l.inv_number,
sum(l.line_units * l.line_price) as invoice_total
from invoice i
join line l on i.inv_number = l.inv_number
group by cus_code,
l.inv_number
) t
group by cus_code;
几点意见:
- 使用现代的显式连接语法,而不是旧的基于逗号的连接语法
- 为子查询使用别名
行。库存编号在子查询外部无效。直接使用
INV\u编号
- 不要使用非标准别名。不要使用空格和反勾号,而要使用下划线
\uu