Mega Code Archive

 
Categories / MySQL / Table Index
 

Use NULL in where clause

/* mysql> Drop table Sale; mysql> CREATE TABLE Sale     -> (     ->    ID SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY,     ->    Name VARCHAR(50) NOT NULL,     ->    InStock SMALLINT UNSIGNED NOT NULL,     ->    OnOrder SMALLINT UNSIGNED NOT NULL,     ->    Reserved SMALLINT UNSIGNED NOT NULL,     ->    Department ENUM('Classical', 'Popular') NOT NULL,     ->    Category VARCHAR(20)     -> ); Query OK, 0 rows affected (0.07 sec) mysql> INSERT INTO Sale (Name,      InStock, OnOrder, Reserved, Department, Cate gory)     -> VALUES          ('Bloodshot', 11,      6,       1,        'Popular',  'Ro ck'),     ->                 ('Opera',     12,      5,       2,        'Classical','Op era'),     ->                 ('Jazz',      13,      4,       3,        'Popular',  'Ja zz'),     ->                 ('Music',     4,       3,       4,        'Classical','Da nce'),     ->                 ('Violin',    25,      2,       5,        'Classical', NU LL),     ->                 ('Toscana',   16,      1,       6,        'Classical', NU LL),     ->                 ('Blues',     7,       22,      7,        'Popular',   'B lues'),     ->                 ('Pure',      38,      5,       11,       'Popular',   NU LL),     ->                 ('Mud',       19,      11,      12,       'Popular',  'Co untry'),     ->                 ('Essence',   5,       23,      12,       'Popular', 'New  Age'),     ->                 ('Embrace',   21,      12,      14,       'Popular', 'New  Age'),     ->                 ('Satie',     42,      17,      15,       'Classical', NU LL),     ->                 ('Lake',      23,      47,      28,       'Classical', 'D ance'),     ->                 ('Favorites', 34,      15,      12,       'Classical', 'G eneral'),     ->                 ('Boheme',    25,      12,       5,       'Classical', 'O pera'),     ->                 ('Cantatas',  26,      13,      8,        'Classical', 'G eneral'),     ->                 ('Road',      27,      13,      17,       'Popular', 'Cou ntry'),     ->                 ('Paris',     18,      25,      10,       'Popular', 'Jaz z'),     ->                 ('Woman',     29,      4,        7,       'Popular', 'Blu es'),     ->                 ('Bach',      21,      13,      16,       'Classical', 'G eneral'),     ->                 ('Opera',     12,      32,      12,       'Classical', 'O pera'),     ->                 ('Soul',      13,      30,      14,       'Popular', NULL ),     ->                 ('Stages',    44,      0,       8,        'Popular', 'Blu es'),     ->                 ('Bach',      15,      1,       8,        'Classical', 'G eneral'); Query OK, 24 rows affected (0.00 sec) Records: 24  Duplicates: 0  Warnings: 0 mysql> select * from Sale; +----+-----------+---------+---------+----------+------------+----------+ | ID | Name      | InStock | OnOrder | Reserved | Department | Category | +----+-----------+---------+---------+----------+------------+----------+ |  1 | Bloodshot |      11 |       6 |        1 | Popular    | Rock     | |  2 | Opera     |      12 |       5 |        2 | Classical  | Opera    | |  3 | Jazz      |      13 |       4 |        3 | Popular    | Jazz     | |  4 | Music     |       4 |       3 |        4 | Classical  | Dance    | |  5 | Violin    |      25 |       2 |        5 | Classical  | NULL     | |  6 | Toscana   |      16 |       1 |        6 | Classical  | NULL     | |  7 | Blues     |       7 |      22 |        7 | Popular    | Blues    | |  8 | Pure      |      38 |       5 |       11 | Popular    | NULL     | |  9 | Mud       |      19 |      11 |       12 | Popular    | Country  | | 10 | Essence   |       5 |      23 |       12 | Popular    | New Age  | | 11 | Embrace   |      21 |      12 |       14 | Popular    | New Age  | | 12 | Satie     |      42 |      17 |       15 | Classical  | NULL     | | 13 | Lake      |      23 |      47 |       28 | Classical  | Dance    | | 14 | Favorites |      34 |      15 |       12 | Classical  | General  | | 15 | Boheme    |      25 |      12 |        5 | Classical  | Opera    | | 16 | Cantatas  |      26 |      13 |        8 | Classical  | General  | | 17 | Road      |      27 |      13 |       17 | Popular    | Country  | | 18 | Paris     |      18 |      25 |       10 | Popular    | Jazz     | | 19 | Woman     |      29 |       4 |        7 | Popular    | Blues    | | 20 | Bach      |      21 |      13 |       16 | Classical  | General  | | 21 | Opera     |      12 |      32 |       12 | Classical  | Opera    | | 22 | Soul      |      13 |      30 |       14 | Popular    | NULL     | | 23 | Stages    |      44 |       0 |        8 | Popular    | Blues    | | 24 | Bach      |      15 |       1 |        8 | Classical  | General  | +----+-----------+---------+---------+----------+------------+----------+ 24 rows in set (0.00 sec) mysql> SELECT Name, Department, Category     -> FROM Sale     -> WHERE Category=NULL     -> ORDER BY Name; Empty set (0.00 sec) */ Drop table Sale; CREATE TABLE Sale (    ID SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY,    Name VARCHAR(50) NOT NULL,    InStock SMALLINT UNSIGNED NOT NULL,    OnOrder SMALLINT UNSIGNED NOT NULL,    Reserved SMALLINT UNSIGNED NOT NULL,    Department ENUM('Classical', 'Popular') NOT NULL,    Category VARCHAR(20) ); INSERT INTO Sale (Name,      InStock, OnOrder, Reserved, Department, Category) VALUES          ('Bloodshot', 11,      6,       1,        'Popular',  'Rock'),                 ('Opera',     12,      5,       2,        'Classical','Opera'),                 ('Jazz',      13,      4,       3,        'Popular',  'Jazz'),                 ('Music',     4,       3,       4,        'Classical','Dance'),                 ('Violin',    25,      2,       5,        'Classical', NULL),                 ('Toscana',   16,      1,       6,        'Classical', NULL),                 ('Blues',     7,       22,      7,        'Popular',   'Blues'),                 ('Pure',      38,      5,       11,       'Popular',   NULL),                 ('Mud',       19,      11,      12,       'Popular',  'Country'),                 ('Essence',   5,       23,      12,       'Popular', 'New Age'),                 ('Embrace',   21,      12,      14,       'Popular', 'New Age'),                 ('Satie',     42,      17,      15,       'Classical', NULL),                 ('Lake',      23,      47,      28,       'Classical', 'Dance'),                 ('Favorites', 34,      15,      12,       'Classical', 'General'),                 ('Boheme',    25,      12,       5,       'Classical', 'Opera'),                 ('Cantatas',  26,      13,      8,        'Classical', 'General'),                 ('Road',      27,      13,      17,       'Popular', 'Country'),                 ('Paris',     18,      25,      10,       'Popular', 'Jazz'),                 ('Woman',     29,      4,        7,       'Popular', 'Blues'),                 ('Bach',      21,      13,      16,       'Classical', 'General'),                 ('Opera',     12,      32,      12,       'Classical', 'Opera'),                 ('Soul',      13,      30,      14,       'Popular', NULL),                 ('Stages',    44,      0,       8,        'Popular', 'Blues'),                 ('Bach',      15,      1,       8,        'Classical', 'General');    select * from Sale;       SELECT Name, Department, Category FROM Sale WHERE Category=NULL ORDER BY Name;