我想为一个简单的搜索创建一个查询结果页面,我不知道,如果我在我的数据库中使用视图,如果我用同样的语法在我的代码中写一个查询会更好吗会创造我的观点。
合并7个表的更好的解决方案是什么,当我想为我的网站构建搜索模块时,有很多用户和页面加载? (我在同一时间在更多的桌子上搜索)
答案 0 :(得分:4)
使用带有连接的普通查询而不是视图会更好。 MySQL中的VIEWS未经过优化。一定要在连接中使用的字段上正确索引表格
答案 1 :(得分:2)
如果你总是使用所有7个表,我认为你应该使用视图。请注意,mysql在创建视图时会更改原始查询,因此将查询保存在其他位置始终是一种很好的做法。
另外,请记住,您可以调整mysql的查询缓存env var,以便存储更多数据,从而使您的查询响应更快。但是,我建议您使用其他方法进行缓存,如memcached。支付版本的mysql原生支持memcached,但我确信你可以在应用程序层实现它没问题。
祝你好运!