Хэрэв NULL бол ISNULL, IFNULL, NVL
2011.05.26 Leave a Comment
Датабаз дээр null утга бүхий талбар дээр хэрхэн ажиллах талаар тэмдэглээд авая.
Жишээгээр:
SELECT field_mungu + field_tatvar AS niit_mungun_dun FROM tbl_husnegt WHERE ... GROUP BY ... ORDER BY ....
field_mungu нь NULL эсвэл field_tatvar нь NULL утга бол niit_mungun_dun нь NULL гарна. Харин NULL-ийг 0, эсвэл өөр ямар нэгэн тоон /int, double, decimal/ утгаар сольвол эцсийн үр дүн NULL биш тоо гарна.
SELECT ISNULL(field_mungu,0) + ISNULL(field_tatvar,0) AS niit_mungun_dun FROM tbl_husnegt WHERE ... GROUP BY ... ORDER BY ....
Тоон утгууд дээр ажиллахаас гадна тэмдэгтэн /char, string, varchar, nvarchar, text/ утгууд дээр ч ажиллаж болно. Овгийн эхний үсгийг аваад цэг залгаад нэрийг залган /А. Бат/ хэрэглэх үед овог байхгүй бол NULL гарч ирээд байдаг. Гэх мэтчилэн ямар ч зүйлд ашиглаж болно.
T-SQL буюу MS-SQL : ISNULL( талбарын_нэр, солих утга )
PL-SQL буюу Oracle: NVL( талбарын_нэр, солих утга )
MySQL: IFNULL( талбарын_нэр, солих утга )

Сэтгэгдэл