我使用这段代码从我创建的表中检索数据。
SELECT id,shirt_name,boys FROM shirts WHERE boys IS NOT NULL它不是只选择男孩列有输入的行,而是选择所有行。下面是我创建该表的方法
CREATE TABLE shirts (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,
shirt_name VARCHAR(20) NOT NULL,
men VARCHAR(10) NULL,
women VARCHAR(10) NULL,
boys VARCHAR(10) NULL,
girls VARCHAR(10) NULL,
babies VARCHAR(10) NULL,
)ENGINE=INNODB;
INSERT INTO shirts(shirt_name,men,women,boys,girls,babies) VALUES
('Crewneck Tee','me_crn','wo_crn','bo_crn','gi_crn','ba_crn'),
('V-Neck Tee','me_vnc','wo_vnc','','',''),
('Scoop Neck Tee','','wo_sco','','',''),
('Raglan Tee','me_rag','wo_rag','bo_rag','gi_rag',''),
('Ringer Tee','me_rin','wo_rin','bo_rin','gi_rin',''),
('Cap Sleeve Tee','','wo_cap','','gi_cap',''),
('Tank Top','me_tan','wo_tan','bo_tan','gi_tan',''),
('Spaghetti Strap','','wo_spa','','',''),
('Hoodie','me_hod','wo_hod','bo_hod','gi_hod','ba_hod');我做错什么了?
发布于 2012-12-30 08:31:50
SELECT id,shirt_name,boys FROM shirts WHERE boys != ''是您需要对此数据使用的内容
发布于 2012-12-30 08:26:01
您没有在boys列中插入任何带有NULL的记录。只记录它是空字符串的地方。空字符串('')不同于NULL,因此它与IS NOT NULL匹配。
https://stackoverflow.com/questions/14087198
复制相似问题