2016-04-16 4 views
0

が動作していない:のMySQL/MariaDB方程式は、私はスキームを使用してデータベースを持っている

| 3 | !1   | NULL | 20160412095518 |  0 | NULL | NULL | NULL | ["redirect","1111"]                                   | NULL   | NULL | NULL            | NULL | NULL | NULL | NULL | NULL | 

:しかし

> select * from pages where pages.s1 = null limit 5; 
Empty set (0.05 sec) 

CREATE TABLE `pages` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, 
`title` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL, 
`descr` blob, 
`updated` binary(14) NOT NULL, 
`weight` float NOT NULL, 
`s1` varchar(1024) DEFAULT NULL, 
`s2` varchar(1024) DEFAULT NULL, 
`s3` varchar(1024) DEFAULT NULL, 
`s4` varchar(1024) DEFAULT NULL, 
`s5` varchar(1024) DEFAULT NULL, 
`s6` varchar(1024) DEFAULT NULL, 
`s7` varchar(1024) DEFAULT NULL, 
`s8` varchar(1024) DEFAULT NULL, 
`s9` varchar(1024) DEFAULT NULL, 
`s10` varchar(1024) DEFAULT NULL, 
`s11` varchar(1024) DEFAULT NULL, 
`s12` varchar(1024) DEFAULT NULL, 
PRIMARY KEY (`id`), 
KEY `page_title` (`title`), 
KEY `page_updated` (`updated`) 
) ENGINE=InnoDB AUTO_INCREMENT=16074 DEFAULT CHARSET=utf8 

その後、私はこのような10.000エントリーの上に持っています

「pages.s1 like '[%]」の選択、btw

なぜですか?

+0

を参照してください(これは長さゼロのvarchar2文字列がNULLとみなさしかし、それは、MySQLのより直接的な方法で動作しているOracleで非常に混乱することができます。。):[NULL値を使用した作業](のhttp:/ /dev.mysql.com/doc/refman/5.7/en/working-with-null.html) – SearchAndResQ

答えて

1

NULL決して=、または<>、または>=か何かに<=、でも自分自身です。

そんなに奇妙なことです。しかし、それに慣れると意味があります。 NULLには値がまったくありません。

where pages.s1 IS NULLではない= NULLが必要です。

関連する問題