Mysql
 sql >> база данни >  >> RDS >> Mysql

Какви са разликите между Null, Zero и Blank в SQL?

Нулата е числова стойност. Това е определено с точни математически свойства. (Можете да правите аритметика върху него...)

NULL означава липса на каквато и да е стойност. Не можете да направите нищо с него, освен да го тествате.

Празното място не е дефинирано. Това означава различни неща в различен контекст за различните хора. Например:

  • Някой може да има предвид стойност на низ с нулева дължина:т.е. такава без знаци в нея ('' ).
  • Някой може да означава стойност на низ с дължина, различна от нула, състояща се само от непечатащи се знаци (SPACE, TAB и т.н.). Или може би се състои само от един символ SPACE.
  • В някои контексти (където символът и низът са различни типове) някой може да има предвид стойност на знаци, които не се отпечатват.
  • Някой може дори да има предвид „всичко, което не се показва, когато го отпечатате или покажете“.

Въпросът е, че "празно" няма нито едно добре дефинирано значение. Поне не в (родната) английска ИТ терминология. Вероятно е най-добре да го избягвате ... ако искате други ИТ специалисти да разберат какво имате предвид . (И ако някой друг използва термина и това не е очевидно от контекста, помолете го да каже какво точно има предвид!)

Не можем да кажем нищо общо смислено за това как са представени ZERO / NULL / BLANK, колко памет заемат или нещо подобно. Всичко, което можем да кажем, е, че те са представени по различен начин един от друг .... и че действителното представяне е зависимо от изпълнението и контекста .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да покажете съпоставянето на вашата връзка в MySQL

  2. Не може да се стартира rails сървър

  3. Урок за MySQL – Ръководство за начинаещи за изучаване на MySQL

  4. zsh:командата не е намерена:mysql

  5. Инсталиране на QMYSQL драйвер