0

在这种情况下,我想在一个列中查找包含名称 steve 和在另一列中包含 email@email.com 的所有记录。我知道我缺少一个接线员,但我不知道哪个接线员

            SELECT firstname,lastname,middlename,company_name, 
                    primary_emailaddress,alternate_emailaddress,personal_address_line1,
                    personal_address_line2,personal_address_city,facebook_username,
                    twitter_username,googleplus_username,linkedin_username,
                    personal_website_url,birthday_month,notes,personal_address_zipcode,
                    company_address_zipcode,home_phonenumber,company_phonenumber,
                    cell_phonenumber,birthday_day,birthday_year,hash,image_file
             FROM contacts
             WHERE (
                MATCH(
                    firstname,lastname,
                    primary_emailaddress,alternate_emailaddress,personal_address_line1,
                    personal_address_city,company_name,
                    company_address_line1,company_address_city,
                    facebook_username,twitter_username,googleplus_username,linkedin_username,
                    personal_website_url
                )
                AGAINST ('Steve email@email.com' IN BOOLEAN MODE))
4

2 回答 2

0

除非你真的在看每一个领域,(即约翰史蒂文森会被认为是'史蒂夫'的比赛)你可以这样做更简单......

select *
from contacts

where firstname like '%Steve%'
 and (primary_emailaddress like '%email@email.com%' or alternate_emailaddress like '%email@email.com%')
于 2013-07-31T21:32:19.103 回答
0

Match比比较快like。我认为您可以在一个where子句中执行两次:

        SELECT firstname,lastname,middlename,company_name, 
                primary_emailaddress,alternate_emailaddress,personal_address_line1,
                personal_address_line2,personal_address_city,facebook_username,
                twitter_username,googleplus_username,linkedin_username,
                personal_website_url,birthday_month,notes,personal_address_zipcode,
                company_address_zipcode,home_phonenumber,company_phonenumber,
                cell_phonenumber,birthday_day,birthday_year,hash,image_file
         FROM contacts
         WHERE MATCH (firstname) AGAINST ('Steve' IN BOOLEAN MODE) > 0 and
               MATCH (primary_emailaddress, alternate_emailaddress)
                     AGAINST ('email@email.com' IN BOOLEAN MODE) > 0;
于 2013-07-31T22:28:55.637 回答