coalesce

coalesce

COALESCE是一個函式, (expression_1, expression_2, ...,expression_n)依次參考各參數表達式,遇到非null值即停止並返回該值。如果所有的表達式都是空值,最終將返回一個空值。使用COALESCE在於大部分包含空值的表達式最終將返回空值。

基本信息

語法

注意:連線操作符“||”是一個值得注意的例外。

例如,空值加任何值都是空值,空值 乘任何值也都是空值,依此類推。

參數

expression

任何類型的表達式。

n

表示可以指定多個表達式的占位符。所有表達式必須是相同類型,或者可以隱性轉換為相同的類型。

資料庫

Mysql

返回類型

將相同的值作為 expression 返回。

作用

返回表達式中第一個非空表達式,如有以下語句:

SELECT COALESCE(NULL,NULL,3,4,5) FROM dual

其返回結果為:3

注釋

如果所有自變數均為 NULL,則 COALESCE 返回 NULL 值。

COALESCE(expression1,...n) 與此 CASE 函式等價:

CASE

WHEN (expression1 IS NOT NULL) THEN expression1

...

WHEN (expressionN IS NOT NULL) THEN expressionN

ELSE NULL

示例

在下面的示例中,顯示包含三列有關某個雇員每年工資收入信息的 wages 表:hourly_wage、salary 和 commission。但是,每個雇員只能接受一種付款方式。若要確定支付給所有雇員的工資總額,請使用 COALESCE 函式接受在 hourly_wage、salary 和 commission 中找到的非空值。

SET NOCOUNT ON

GO

USE master

IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES

WHERE TABLE_NAME = 'wages')

DROP TABLE wages

GO

CREATE TABLE wages

(

emp_id tinyint identity,

hourly_wage decimal NULL,

salary decimal NULL,

commission decimal NULL,

num_sales tinyint NULL

)

GO

INSERT wages VALUES(10.00, NULL, NULL, NULL)

INSERT wages VALUES(20.00, NULL, NULL, NULL)

INSERT wages VALUES(30.00, NULL, NULL, NULL)

INSERT wages VALUES(40.00, NULL, NULL, NULL)

INSERT wages VALUES(NULL, 10000.00, NULL, NULL)

INSERT wages VALUES(NULL, 20000.00, NULL, NULL)

INSERT wages VALUES(NULL, 30000.00, NULL, NULL)

INSERT wages VALUES(NULL, 40000.00, NULL, NULL)

INSERT wages VALUES(NULL, NULL, 15000, 3)

INSERT wages VALUES(NULL, NULL, 25000, 2)

INSERT wages VALUES(NULL, NULL, 20000, 6)

INSERT wages VALUES(NULL, NULL, 14000, 4)

GO

SET NOCOUNT OFF

GO

SELECT CAST(COALESCE(hourly_wage * 40 * 52,

salary,

commission * num_sales) AS money) AS 'Total Salary'

FROM wages

GO

下面是結果集:

Total Salary

------------

20800.0000

41600.0000

62400.0000

83200.0000

10000.0000

20000.0000

30000.0000

40000.0000

45000.0000

50000.0000

120000.0000

56000.0000

基本概括

英音:[,kəuə'les]美音:[,koə'lɛs]

詞典解釋

不及物動詞vi.

1. 聯合

2. (挫傷的骨頭)接合;(傷口)癒合

網路釋義

1. 聯合,合併,結合

康復網-GRE辭彙精選朗讀一 帶辭彙表

coalesce v.聯合,合併,結合

2.(政黨)聯合,癒合,接合

商都網|教育|培訓|學習資料|課件下載 2...

6. coalesce (政黨)聯合,癒合,接合

3.結合,聯合

07年MBA英語最有效的背單詞方法(38)

coalesce v 結合,聯合

相關詞條

相關搜尋

熱門詞條

聯絡我們