Mysql SQL查询(~5个表连接,如果可能)?
我有那些MySQL表:Mysql SQL查询(~5个表连接,如果可能)?,mysql,sql,codeigniter,Mysql,Sql,Codeigniter,我有那些MySQL表: products id products_content product_id, lang, product_name, product_content products_and_categories product_id, category_id products_categories id, parent_id products_categories_content category_id, lang, category_name, category_cont
products
id
products_content
product_id, lang, product_name, product_content
products_and_categories
product_id, category_id
products_categories
id, parent_id
products_categories_content
category_id, lang, category_name, category_content
products_and_prices
product_id, price_id
products_prices
id
products_prices_content
price_id, lang, description, weight, price, currency
例如,如何从id为5的类别中选择所有产品,以及每个产品的所有价格?单次查询是否可行
目前,为了从类别中选择所有产品,我使用CodeIgniter:
$this->db->select('*')
->from('products')
->join('products_content', 'products_content.product_id = products.id')
->join('products_and_categories', 'products_and_categories.product_id = products.id')
->where(array('category_id' => $category_id, 'lang' => $lang));
没有什么我知道怎么做,但方法很少。只是想通过复杂的单一查询寻找简单的方法。。如果可行:您可以随时使用$this->db->query'SELECT…->编写一个普通查询,如果需要,可以使用子查询生成结果。您不能将products\u和\u prices以及products\u prices表加入到您已经设置的查询中吗?因为您想要区分不同的实体、产品和价格,在每个价格行中包含所有产品数据的开销很大,最好运行2个QuerySmartLayer,每个产品有多个价格。。