从条件中检索多个表中的数据

时间:2012-11-09 07:25:34

标签: mysql sql join

我有两张桌子:

  1. 应收账款

    • debtorid
    • name
    • inactive
  2. rfnwagon

    • rfnwagonid
    • dumpid
    • customerid
    • allocationdate
  3. debtorid有2个值21和22:

    • 21表示客户
    • 22表示转储

    我希望显示整个rfnwagon行,而不是使用dumpid=21customer_id=22,我想使用表debtor中的名称。我尝试了但失败了:

    SELECT 
        rfnwag.rfn_wagon_id,
        debtor.name,
        debtor.name,
        rfnwag.no_of_wagons,
        rfnwag.order_id,
        rfnwag.product_id,
        rfnwag.destination,
        rfnwag.allocation_date      
    FROM rfn_wagon_allocation as rfnwag,
            debtors_master as debtor
    WHERE rfnwag.customer_id=debtor.debtor_no AND rfnwag.dump_id=debtor.debtor_no"
    

2 个答案:

答案 0 :(得分:0)

我很难完全理解你的要求,但我在这里看不到任何JOIN,这在使用多个表时是必需的。看一下这个例子,也许这就是你需要的:http://www.w3schools.com/sql/sql_join_left.asp

答案 1 :(得分:0)

我认为这永远不会成真:

debtor.debtor_no=debtor.name 

因此将其从WHERE子句中删除。

“你没有成功”究竟是什么意思?没有行?行太多了?行不正确?