首頁 資料庫 mysql教程 [每日一题] OCP1z0-047 :2013-08-29 NULL_MySQL

[每日一题] OCP1z0-047 :2013-08-29 NULL_MySQL

Jun 01, 2016 pm 01:30 PM
表達式 一般

bitsCN.com

[每日一题] OCP1z0-047 :2013-08-29 NULL

 

[每日一题] OCP1z0-047 :2013-08-29 NULL_MySQL

 

正确答案:B

 

 

用函数可以针对各种数据类型时行操作,包括NULL值在内。其中有一类通用函数,是专门针对NULL值的。

 

 

1、针对NULL值的通用函数

(1)NVL(表达式1,表达式2): 转换空值为一个实际值。如果表达式1值为空,NVL将返回表达式2的值作为结果。如果表达式1

 

 

不为空,以表达式1的值作为结果。

 这个函数在有些时候非常有用,在很多应用程序中,都要把空当作0处理,这利用NVL是容易实现的:

[html] gyj@OCM> select name,salary,nvl(salary,0) from t1;  NAME           SALARY NVL(SALARY,0)  ---------- ---------- -------------  gyj2             8000          8000  gyj3            10000         10000  gyj4            15000         15000  gyj8                     0  
登入後複製

2)NVL2 (表达式1,表达式2,表达式3)

此函数比NVL更复杂些。它首先判断表达式1的值,如果表达式1非空,函数返回表达式2的值作为结果。如果表达式1 为空, 返回

表达式3的值为结果。表达式1 可以是任意数据类型、运算式子。

仍以上面的例子为准,将SAL列中为空的转换成0,不为空的不变:

[html] gyj@OCM> select name,salary,nvl2(salary,salary,0) from t1;  NAME           SALARY NVL2(SALARY,SALARY,0)  ---------- ---------- ---------------------  gyj2             8000                  8000  gyj3            10000                 10000  gyj4            15000                 15000  gyj8                                      0  
登入後複製

(3)NULLIF(表达式1,表达式2)

比较两个表达式,如果相等返回空;如果不相等,返回第一个表达式。

用它可以实现和上面例子中相反的效果。有些应用程序,要求把为0的值显示为空:

[html] gyj@OCM> update t1 set salary=0 where id=5;  1 row updated.  gyj@OCM> commit;  Commit complete.  gyj@OCM> select id,name,nullif(salary,0) from t1;          ID NAME       NULLIF(SALARY,0)  ---------- ---------- ----------------           2 gyj2                   8000           3 gyj3                  10000           4 gyj4                  15000           5 gyj5           7 gyj7                  12000  
登入後複製

nullif(sal,0),就是将SAL为0的转变为空。NVL和NVL2是将为空的转变成其他不是空的值。

(4)COALESCE(表达式1,表达式2,表达式3,…………,表达式n)

返回表达式列表中的第一个值为非空的表达式的值。

它可以实现和NVL一样的功能,而且它的功能比NVL强。如果用它来实现将NULL转为0的操作,方法如下:

[html] gyj@OCM> select id,name,COALESCE(salary,0) from t1;     ID NAME       COALESCE(SALARY,0)  ---------- ---------- ------------------           2 gyj2                     8000           3 gyj3                    10000           4 gyj4                    15000           5 gyj5                        0           7 gyj7                    12000  
登入後複製

 


bitsCN.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1318
25
PHP教程
1269
29
C# 教程
1248
24
如何下載適用於通用 PnP 監視器的驅動程式:5 種方法 如何下載適用於通用 PnP 監視器的驅動程式:5 種方法 Apr 21, 2023 pm 08:55 PM

如果您最近升級到Windows10或Windows11,您可能需要在您的PC上下載通用PnP顯示器驅動程式。因此,我們想出了一個教程,它將告訴您更多關於通用PnP監視器和一些在Windows上下載和安裝通用PnP驅動程式的快速方法。您可能需要下載大多數顯示器品牌的驅動程序,包括AcerGenericPnP顯示器驅動程式。在裝置管理員或顯示適配器屬性的監視器標籤下尋找監視器類型時,您可能會注意到通用PnP監視器。有機會在筆記型電腦和桌上型電腦的雙顯示器設定中找到它。下

如何在Windows 11個人電腦和筆記型電腦上停用通用浮水印? 如何在Windows 11個人電腦和筆記型電腦上停用通用浮水印? Apr 21, 2023 pm 02:49 PM

您是否對Windows11螢幕右下角的惱人浮水印感到困擾?你不知道如何刪除它?適用於Windows11的UniversalWatermarkDisabler是一種工具,可協助刪除Windows螢幕右下角幹擾桌布和整體體驗的煩人浮水印。事不宜遲,讓我們開始吧。從Windows11中刪除水印的3種解決方案1.使用UniversalWatermarkDisabler去除水印在Windows11中刪除評估副本水印的最簡單方法是使用通用水印禁用程序,這是一個第三方免費軟體

底特律車展迎來期待:福特、通用和Stellantis攜旗下品牌參展 底特律車展迎來期待:福特、通用和Stellantis攜旗下品牌參展 Jun 09, 2023 pm 09:15 PM

06月08日消息,底特律車展的主辦單位近日宣布,今年的底特律車展將於9月13日正式開幕。據悉,主辦單位承諾今年的車展將比去年更加精彩,吸引更多的參展品牌和車企參與。儘管目前還沒有透露具體參展車企的數量,但據小編了解,與去年相比,預計參展品牌的數量將增加一倍。這將使得今年的底特律車展具備更大的吸引力和影響力。去年受到疫情的影響,許多汽車製造商決定不參加該展會,包括本田、現代起亞、日產以及奧迪、保時捷和捷豹路虎等品牌都缺席。然而,今年的情況將會有所不同。福特、通用和Stellantis等汽車大廠將在本屆車

如何透過 Beta 版立即在 Mac 和 iPad 上獲得通用控制 如何透過 Beta 版立即在 Mac 和 iPad 上獲得通用控制 Jul 07, 2023 pm 09:49 PM

要求除了執行macOSMonterey12.3或更新版本以及iPadOS15.4或更新版本之外,您還需要更新的Mac(任何2016或更新的MacBookPro,或2018或更新的MacBookAir、Mini或iMac,或MacPro),以及更新的iPad(任何iPadPro、iPadAir第3代或更新版本、iPad第6代或更新版本、iPadMini第5代或更新版本)。任何想要使用UniversalControl的裝置都需要登入啟用了iCloud的同一個AppleID帳號。立即透過Beta在M

Microsoft Teams 已針對 Apple Silicon 優化為'通用應用程式”,現已推出測試版 Microsoft Teams 已針對 Apple Silicon 優化為'通用應用程式”,現已推出測試版 Apr 15, 2023 am 08:40 AM

微軟Teams 終於收到了一個可以直接與最新 Mac PC 中基於 ARM 的晶片組互動的版本。針對 Apple Silicon 優化的 Teams Beta 版可直接從Microsoft獲得.大約一年半前,Apple 發布了帶有自己專有晶片組的 Mac PC。由蘋果工程師設計的 M1 SoC 獲得了許多好評。雖然上一代 Apple PC 採用英特爾處理器,但這些基於 ARM

如何解決Python的表達式語法錯誤? 如何解決Python的表達式語法錯誤? Jun 24, 2023 pm 05:04 PM

Python作為一種高階程式語言,易於學習和使用。一旦需要編寫Python程式時,無法避免地遇到語法錯誤,表達式語法錯誤是常見的一種。在本文中,我們將討論如何解決Python的表達式語法錯誤。表達式語法錯誤是Python中最常見的錯誤之一,它通常是由於錯誤的使用語法或缺少必要組件而導致的。在Python中,表達式通常由數字、字串、變數和運算子組成。最常見的

Java Lambda 表達式實戰:用程式碼解鎖函數式程式設計的奧秘 Java Lambda 表達式實戰:用程式碼解鎖函數式程式設計的奧秘 Feb 26, 2024 am 10:25 AM

Lambda表達式,顧名思義,就是一種以箭頭符號(->)為核心的匿名函數。它允許你將程式碼區塊作為參數傳遞給其他方法,或將其儲存到變數中以供以後使用。 Lambda表達式語法簡潔、易於理解,非常適合處理資料流和平行計算。 1.Lambda表達式的基本語法Lambda表達式的基本語法如下:(參數列表)->{程式碼區塊}其中,參數列表和程式碼區塊都是可選的。如果只有一個參數,可以省略括號。如果程式碼區塊只有一行,可以省略大括號。例如,以下程式碼區塊使用Lambda表達式實現了將數字加1的功能:List

在C和C++中,逗號(comma)的用法是用來分隔表達式或語句 在C和C++中,逗號(comma)的用法是用來分隔表達式或語句 Sep 09, 2023 pm 05:33 PM

在C或C++中,逗號「,」有不同的用途。在這裡我們將了解如何使用它們。逗號作為運算符。逗號運算符是一個二元運算符,它計算第一個操作數,然後丟棄結果,然後計算第二個運算符並傳回值。逗號運算子在C或C++中的優先權最低。範例#include<stdio.h>intmain(){  intx=(50,60);  inty=(func1(),func2());}這裡60將被指派給x。對於下一語句,將會先執行func1(

See all articles