我有一個複雜的查詢,我一直在摔跤2天,似乎無法讓它運行。我有兩個querys - 第一個查詢工作正常,但我不知道第二個 我在做什麼錯了?MySQL查詢匹配數組中的所有內容
CREATE TABLE `recipes` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(100) NOT NULL default '',
`cat` int(5) NOT NULL default '0',
`instructions` text NOT NULL,
`submitted_by` varchar(100) NOT NULL default '',
`addDate` date NOT NULL default '0000-00-00',
`hits` int(7) NOT NULL default '0',
`metaDesc` text NOT NULL,
`metaKeys` text NOT NULL,
`enComments` enum('yes','no') NOT NULL default 'yes',
`enRating` enum('yes','no') NOT NULL default 'yes',
`enRecipe` enum('yes','no') NOT NULL default 'yes',
`isApproved` enum('yes','no') NOT NULL default 'no',
`comCount` int(7) NOT NULL default '0',
`ratingCount` int(8) NOT NULL default '0',
`ipAddresses` text NOT NULL,
`email` varchar(250) NOT NULL default '',
`rss_date` varchar(35) NOT NULL default '',
PRIMARY KEY (`id`),
FULLTEXT KEY `name` (`name`,`instructions`,`metaDesc`,`metaKeys`),
FULLTEXT KEY `submitted_by` (`submitted_by`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=37 ;
CREATE TABLE `ingredients` (
`id` int(10) NOT NULL auto_increment,
`recipe` int(8) NOT NULL,
`qty` varchar(128) NOT NULL,
`measurement` varchar(128) NOT NULL,
`ingredient` varchar(128) NOT NULL,
PRIMARY KEY (`id`),
KEY `ingredient` (`ingredient`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=135 ;
我已經創建了一個搜索詞匹配的成分表中的任何成分,並導致整個配方的查詢。
$q_recipe = mysql_query("SELECT * FROM recipes
WHERE enRecipe = 'yes'
AND isApproved = 'no'
AND MATCH(name,instructions,submitted_by,metaDesc,metaKeys) AGAINST('".$search."') IN BOOLEAN MODE)
OR id IN (SELECT distinct recipe FROM ingredients WHERE ingredient LIKE '%".$search."%')
ORDER BY name LIMIT $limit") or die(mysql_error());
的目標是改寫上面的查詢來提供搜索詞匹配的數組只包括該陣列中的所有條款食譜新的搜索功能。幫幫我!!!