查询改进

时间:2012-07-04 11:39:06

标签: mysql search

有人可以建议我对以下查询进行改进。

$q = "
    SELECT q. *
      FROM questions q, answers a
     WHERE q.questions LIKE '%".$str."%'
        OR a.answers   LIKE '%".$str."%'
       AND q.id = a.id_questions
  GROUP BY q.id
     LIMIT 10"

它用于搜索数据库,其中包含> 100.000个问题和答案。

使用较少的记录可以正常工作,但现在......

即使有限制10,服务器也会消失

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT     q.*
FROM       questions q
INNER JOIN answers a
ON         q.id = a.id_questions
WHERE      q.questions LIKE '%yourstring%'
OR         a.answers LIKE '%yourstring%'
GROUP BY   q.id
相关问题