Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL查询(~5个表连接,如果可能)?_Mysql_Sql_Codeigniter - Fatal编程技术网

Mysql SQL查询(~5个表连接,如果可能)?

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

我有那些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_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,每个产品有多个价格。。