将一个表的字段与另一个表的其他字段进行比较

时间:2010-04-01 21:50:04

标签: php mysql

我有一个名为add_item()的函数,它实际上在名为 item_name 的临时表的字段temp中插入值temp_id和{ {1}}。我有另一张名为 item_name 的表,其中包含字段item。我有另一个名为 item_id, item_name, price 的表格,其中包含字段quotation。 现在我无法弄清楚如何将q_id, item_id,item_name,priceitem_nametemp的{​​{1}}进行比较。然后,在item_name表中插入item的值。有人可以指导我吗? 例如,我在temp中有以下记录 temp_id item_name
1套件 2钻
3测试人员

我在项目中有以下记录:
id item_name价格
1钻A 100
2钻B 354
3钻C 743
4测试仪643
5 cccc 643

我想要做的是将temp表中的item_name与表项的item_name进行比较。 比较后,我应该在表格引用中插入这些值 quotation_id searching_name item_name价格
未找到1个套件null 2钻钻A 100
3钻钻B 354
4钻钻头C 743
5测试仪测试仪643
有人可以指导我从哪里开始吗?谢谢

2 个答案:

答案 0 :(得分:0)

如果您指的是如何在单个查询中引用多个表/数据库中的字段,则使用“。”符号:

SELECT table1.id, table2.value, table3.discount etc...

使用FROM和JOIN子句中指定的相应表。这可以扩展为完全引用其他数据库中的字段:

SELECT table1.id, table2.value
FROM database1.table1, database2.table2

更新

INSERT INTO quotations
   SELECT item.item_name AS item_name, price
   FROM records
   LEFT JOIN temp ON item.item_name = temp.item_name;
假设您的报价表包含item_nameprice字段,

应该可以解决问题。这将拉出两个表中item_Name相同的任何记录,并将item_name和price插入到引号中。

答案 1 :(得分:0)

//选择查询以从两个表中获取数据

$ get_data = mysql_query(“SELECT *,temp.item_name AS搜索,item.item_name AS响应 FROM temp JOIN item ON temp.item_name = item.item_name“);

而($ DATAS = mysql_fetch_array($ GET_DATA))     {

          //inserting into quotation table
          mysql_query("INSERT INTO quotation SET 
                       searched_name='".$datas['searched']."',
                       item_name='".$datas['response']."',
                       price='".$datas['price']."' ");

}