mysql多表联合查询优化的问题
有3个结构几乎一样的表,需要从3个表中查询数据,每个表大概有几万条数据,用下面的查询语句,耗时在5秒以上,请问有什么办法可以提高查询效率SELECT*FROM(SELEC...
有3个结构几乎一样的表,需要从3个表中查询数据,每个表大概有几万条数据,用下面的查询语句,耗时在5秒以上,请问有什么办法可以提高查询效率
SELECT * FROM(
SELECT id,title,inputtime,description,url,thumb,status FROM sc_news
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_pic
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_video
) AS a
WHERE a.title like '%中国%'
3张表是无关联的,所以采用 UNION 方法 展开
SELECT * FROM(
SELECT id,title,inputtime,description,url,thumb,status FROM sc_news
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_pic
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_video
) AS a
WHERE a.title like '%中国%'
3张表是无关联的,所以采用 UNION 方法 展开
展开全部
SELECT * FROM(
SELECT id,title,inputtime,description,url,thumb,status FROM sc_news
WHERE title like '%中国%'
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_pic
WHERE title like '%中国%'
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_video
WHERE title like '%中国%'
) AS a
这样会不会快点。
SELECT id,title,inputtime,description,url,thumb,status FROM sc_news
WHERE title like '%中国%'
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_pic
WHERE title like '%中国%'
UNION
SELECT id,title,inputtime,description,url,thumb,status FROM sc_video
WHERE title like '%中国%'
) AS a
这样会不会快点。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
查询的语句方面没有什么可优化的地方,都是用Union,如果三个表没有重复的数据,可以用Union All会快一点,Title这个字段有建立索引吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个是坑爹的语句,若过要经常搜索的话,建议数据库全文索引
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询