在 Teradata/SQL 中转换为小数

Casting to decimal in Teradata/SQL

我正在尝试在 (Teradata) SQL 查询中输入一行,以便获取小数:

 (SUM((vndr_po_ln_vb.mnfst_qty - vndr_po_ln_vb.rcvd_qty)))/(CAST(COUNT(DISTINCT vndr_po_vb.vndr_po_num)) AS DECIMAL(3,2))  AS "Average Damaged Cases per PO"

但是,它似乎返回了一个错误:

Syntax error: expected something between ')' and ')'.

我是否正确地转换了这行代码?

你的parens太多了而且放错地方了:

SUM(vndr_po_ln_vb.mnfst_qty - vndr_po_ln_vb.rcvd_qty)
/ CAST(COUNT(DISTINCT vndr_po_vb.vndr_po_num) AS DECIMAL(3, 2)) AS "Average Damaged Cases per PO"

但是如果计数 returns 超过 10,这将失败。