數學運算子符號 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

數學運算子符號

下表列出支援的數學運算子。

支援的運算子

運算子 描述 範例 結果
+ 加法 2 + 3 5
- 減法 2 - 3 -1
* 乘法 2 * 3 6
/ 除法 4 /2 2
% 模數 5 % 4 1
^ 指數 2.0 ^ 3.0 8
|/ 平方根 | / 25.0 5
||/ 立方根 || / 27.0 3
@ 絕對值 @ -5.0 5
<< 位元左移 1 << 4 16
>> 位元右移 8 >> 2 2
& 位元 and 8 & 2 0

範例

下列範例使用 TICKIT 範例資料庫。如需詳細資訊,請參閱 範本資料庫

若要計算給定交易的已付佣金加 2.00 USD 手續費,請使用下列範例。

SELECT commission, (commission + 2.00) AS comm FROM sales WHERE salesid = 10000; +------------+-------+ | commission | comm | +------------+-------+ | 28.05 | 30.05 | +------------+-------+

若要計算給定交易售價的 20%,請使用下列範例。

SELECT pricepaid, (pricepaid * .20) as twentypct FROM sales WHERE salesid=10000; +-----------+-----------+ | pricepaid | twentypct | +-----------+-----------+ | 187 | 37.4 | +-----------+-----------+

若要使用 DEXP 函數以根據持續成長模式來預測門票銷售,請使用下列範例。在此範例中,子查詢傳回 2008 年銷售的門票數。此結果以指數方式乘以過去 10 年的持續成長率 5%。

SELECT (SELECT SUM(qtysold) FROM sales, date WHERE sales.dateid=date.dateid AND year=2008)^((5::float/100)*10) AS qty10years; +------------------+ | qty10years | +------------------+ | 587.664019657491 | +------------------+

若要尋找日期 ID 大於或等於 2000 之銷售的支付總價和佣金,請使用下列範例。然後從支付總價中減去佣金總計。

SELECT SUM(pricepaid) AS sum_price, dateid, SUM(commission) AS sum_comm, (SUM(pricepaid) - SUM(commission)) AS value FROM sales WHERE dateid >= 2000 GROUP BY dateid ORDER BY dateid LIMIT 10; +-----------+--------+----------+-----------+ | sum_price | dateid | sum_comm | value | +-----------+--------+----------+-----------+ | 305885 | 2000 | 45882.75 | 260002.25 | | 316037 | 2001 | 47405.55 | 268631.45 | | 358571 | 2002 | 53785.65 | 304785.35 | | 366033 | 2003 | 54904.95 | 311128.05 | | 307592 | 2004 | 46138.8 | 261453.2 | | 333484 | 2005 | 50022.6 | 283461.4 | | 317670 | 2006 | 47650.5 | 270019.5 | | 351031 | 2007 | 52654.65 | 298376.35 | | 313359 | 2008 | 47003.85 | 266355.15 | | 323675 | 2009 | 48551.25 | 275123.75 | +-----------+--------+----------+-----------+