嗨,我对PHP和mysql相对较新,非常感谢任何帮助... pleeeeease!
我认为这很简单,但我遇到了麻烦。我有两张桌子
表1: product_color
-- Id
-- base_color
-- base_color_name
-- red
-- green
-- blue
表2:艺术作品
-- id
-- art_name
-- product color
Product_color表中的“base_color”和Artwork表中的“product_color”具有相同的值,其中Artwork表与Product Color表具有多对一关系。
我需要做的是比较两个表,如果Artwork表中的值与Product颜色表中的任何相同值匹配,那么我想回显该匹配行的红色,绿色和蓝色字段中的数据在product_table中。
我得到了mysql语句。但是对于我的生活,我无法弄清楚如何从“product_color”表中检索“红色,绿色和蓝色”值:(
这是mySQL声明:
SELECT * FROM product_color ON artwork.product_color = product_color.base_color
任何帮助都会被SOOOOO赞赏!!
答案 0 :(得分:2)
你很亲密:
SELECT * FROM product_color JOIN artwork ON product_color=base_color
因为你要求一个完整的例子。这里使用的是原生函数。 (如果可以的话,我建议使用PDO,但它更复杂一些)
$res = mysql_query( "SELECT * FROM product_color JOIN artwork ON product_color=base_color" );
// check for errors
if( !$res ) {
die( mysql_error() );
}
// now loop through each of the rows returned from the query.
while( $row = mysql_fetch_assoc($res) ) {
// the row is available as an associative array by column name
// so if you want to echo product_color:
echo $row['product_color'];
}