MySQL では unique key が NULL を無視する

MySQL では unique key を指定していても NULL があると無視されるようだ。

たとえば次のテーブルでは、name と deleted_at の組に unique key を指定している。

create table test1(
  id         integer        primary key auto_increment,
  name       varchar(100)   not null,
  deleted_at datetime,
  unique key (name, deleted_at)
);

なのに、同じ値の組み合わせを入れてもエラーにならない。

mysql> insert into test1 values(null, 'aaa', null);
mysql> insert into test1 values(null, 'aaa', null);
mysql> insert into test1 values(null, 'aaa', null);
mysql> select * from test1;
+----+------+------------+
| id | name | deleted_at |
+----+------+------------+
|  1 | aaa  | NULL       | 
|  2 | aaa  | NULL       | 
|  3 | aaa  | NULL       | 
+----+------+------------+

まじっすかー。勘弁してくださいよ MySQL さん。unique key の意味ないじゃん。
#これって標準的なSQLの仕様なんかな。