Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.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
Php mySQL在哪里加入?_Php_Mysql_Database_Join_Where - Fatal编程技术网

Php mySQL在哪里加入?

Php mySQL在哪里加入?,php,mysql,database,join,where,Php,Mysql,Database,Join,Where,是否可以在mysql JOIN语句中添加WHERE,例如: $result = mysql_query("SELECT * FROM site_products JOIN site_trans ON site_products.product_count = site_trans.trans_inventory WHERE site_products.product_id = site_trans.trans_product"); 这可能吗 SELECT * FROM site_product

是否可以在mysql JOIN语句中添加WHERE,例如:

$result = mysql_query("SELECT * FROM site_products JOIN site_trans ON site_products.product_count = site_trans.trans_inventory WHERE site_products.product_id = site_trans.trans_product");
这可能吗

SELECT * FROM site_products JOIN site_trans ON (site_products.product_count = site_trans.trans_inventory AND site_products.product_id = site_trans.trans_product) WHERE 1 选择*从站点\产品加入站点\交易(站点\产品.产品\计数=站点\交易.交易\库存,站点\产品.产品\ id=站点\交易.交易\产品) 其中1
是,这是可能的,但您的查询可能不会给出所需的结果:

SELECT * FROM site_products 
JOIN site_trans ON site_products.product_count = site_trans.trans_inventory 
WHERE site_products.product_id = site_trans.trans_product
相反,您应该将其作为附加的连接条件编写,如下所示

SELECT * FROM site_products 
JOIN site_trans ON site_trans.trans_inventory = site_products.product_count
     AND site_trans.trans_product = site_products.product_id
您还可以添加WHERE子句

SELECT * FROM site_products 
JOIN site_trans ON site_trans.trans_inventory = site_products.product_count
     AND site_trans.trans_product = site_products.product_id
WHERE site_products.product_id = 2

是的,这可以在MYSQL连接查询中使用where条件。即使您可以使用AND运算符使用多个where条件。

连接后将执行where。如果要将where更改为
?@k102它将起作用,您必须使用(AND)after ON,所以查询将如下所示:
SELECT*FROM site\u products JOIN site\u trans ON(site\u products.product\u count=site\u trans.trans\u inventory AND site\u products.product\u id=site\u trans.trans\u product)
您只需执行它就可以看到它确实是可能的。@Wojtek实际上我知道它是正确的(意思是语法)-我不知道OP想要什么是否正确