NULLを別の値に置換して返す NVL / NVL2
NULLを別の値に置換して返す
| NVL ( expr1 , expr2 ) | NULLを文字列に置換する。 expr1がNULLの場合はexpr2を戻す。 |
|---|---|
| NVL2 ( expr1 , expr2 , expr3 ) | expr1がNULLでない場合、NVL2はexpr2を戻す。 expr1がNULLの場合、NVL2はexpr3を戻す。 |
| expr1 | NULL を設定可能な式(数値式、文字列式、日付式、などなど) |
|---|---|
| expr2 | 数値式、文字列式、日付式 |
| expr3 | 数値式、文字列式、日付式 |
使用例
MGRがNULLの場合、0を返します。COMMがNULLの場合、0を返し、NULLでない場合10,000を返します。
select EMPNO, ENAME, JOB, HIREDATE, SAL, MGR , nvl(MGR,0), COMM, nvl2(COMM,0,10000) from EMP
Imports Oracle.DataAccess.Client
Public Class frmSQL_Trim
Private dt As DataTable = Nothing
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Using da As New OracleDataAdapter(TextSQL.Text.Trim, clsGlobal.gConnetionString)
dt = New DataTable
da.Fill(dt)
'Gridにバインド
Grid1.DataSource = dt
End Using
Catch ex As OracleException
MessageBox.Show(ex.Message)
End Try
End Sub
