我想在我的结果集上应用不同的过滤器,以便我可以检索过滤器的excat结果,并且没有必要每次这个过滤器都有一些值,它也可能包含null值,所以请使用这样的过滤器 下面是我的表
CREATE TABLE `data` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(45) DEFAULT NULL,
`url` varchar(45) DEFAULT NULL,
`categoryid` int(11) DEFAULT NULL,
`labelid` int(11) DEFAULT NULL,
`datetime` datetime DEFAULT NULL,
`ispublic` int(11) DEFAULT NULL,
`value` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=latin1;
INSERTed VALUES
INSERT INTO `my_schema`.`data`
(
`title`,
`url`,
`categoryid`,
`labelid`,
`datetime`,
`ispublic`,
`value`)
VALUES
('newclip','http://newclip/',1,1,'2014-11-21 10:40:49',1,3.5),
('newclip url','http://newclip/fisrt/',1,3,'2014-12-21 10:40:49',0,3),
('newclip123','http://newclip123/',2,1,'2014-11-20 10:40:50',1,3.5),
('clip','http://clip/',4,2,'2014-10-21 1:40:49',0,3.5),
('new','http://new/',5,3,'2014-11-25 10:50:49',0,2),
('music','http://newclip/mucis',1,2,'2014-12-21 10:40:49',1,3.5),
('newclip','http://newclip/',4,6,'2014-11-28 10:40:49',0,5),
('newclip','http://newclip/',6,7,'2014-11-21 10:40:49',1,3.5),
('newclip url','http://newclip/fisrt/',1,2,'2014-12-21 10:40:49',0,3),
('newclip123','http://newclip123/',2,1,'2014-11-20 10:40:50',1,3.5),
('clip','http://clip/',1,2,'2014-10-21 1:40:49',0,3.5),
('new','http://new/',1,2,'2014-11-25 10:50:49',0,2),
('music','http://newclip/movie',1,2,'2014-12-21 10:40:49',1,3.5),
('newclip','http://newclip/',1,2,'2014-11-28 10:40:49',0,5)
用于搜索特定记录的查询仅应用于标题& url,我想要检索所有包含&newcip'标题或网址。
SELECT * FROM my_schema.data WHERE title LIKE'%newclip%'或者网址喜欢'%newclip%';
使用上面的查询我得到所有在url或title
中都有newclip的记录现在我想在这个结果集上应用过滤器,过滤器可以使用categoryid,labelid,datetime,ispublic,values等来应用它。
如何过滤此类结果集, 任何帮助将不胜感激,谢谢
答案 0 :(得分:1)
在外部查询中包含那些过滤器,这些过滤器将应用于内部查询获得的结果集。像
这样的东西select * from
(
SELECT * FROM my_schema.data
WHERE title LIKE '%newclip%'
OR url LIKE '%newclip%'
) tab
where categoryid = 3
or labelid = 4;
答案 1 :(得分:0)
Select * from
(SELECT * FROM my_schema.data WHERE title
LIKE '%newclip%' OR url LIKE '%newclip%') `temp_tbl`
WHERE condition here...