select pp.corder_bid , po.pk_order from po_order_b pob, po_order po,po_invoice_b pp where pob.fk_order = po.pk_order and pp.corder_bid=pob.pk_order_b
解决方案 »
- MySQL 两表关联,找最相匹配和一致数据的问题!!!
- SELECT COLUMN_NAME from information_schema 怎么会多出来几个字段?
- 问个存储过程怎么写
- JProgressBar 进度显示问题
- MySQL数据显示不全的问题
- 全文检索 match against 问题
- 请教一个mysql的分组查询问题?
- 为什么我的mysql服务不能和IP绑在一起
- 中文问题!急
- Navicat for MySQL中导入CSV文件出现问题
- MYSQL全文本搜索 ,不对列进行FULLTEXT索引, 然后使用 IN BOOLEAN MODE
- 架设mmm 结合mysql-proxy成功,但是两个DB同步一会儿就有一个同步中断了
select p.corder_bid, pob.pk_order_b, po.cendormangid,pob.nordernum ,pob.naccumarrvnum ,pob.nprice,pob.nmoney
from po_order_b as pob
left join po_order as po on pob.fk_order = po.pk_order
left join po_invoice_b as p on p.corder_bid = pob.pk_order_b
005d6e1763f8418387d061e085dafb08 111 2.000 2.000 650.00 1300.00
006af263f9044bcc994f2a9ef3b3e3ca 98 230.000 230.000 3.80 874.00
00782a1038fd4dac9d1c54c7ff54eccd 113 10.000 10.000 17.00 170.00
013bf6c945a4415697ce9d38c4dbac79 161 0.000 2.330 6500.00 0.00
============================
第一列居然是NULL也查出来
left join po_invoice_b as p on p.corder_bid = pob.pk_order_b
根本没起作用
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00
0 0a2ab1c9dd424d36a302440ac83f1b5e 148 2.000 2.000 9.00 18.00第一列是零的也查询出来了
left join po_invoice_b as p on p.corder_bid = pob.pk_order_b
这个根本没起作用
#还是不行 下面这样写
select p.corder_bid, pob.pk_order_b, po.cendormangid,pob.nordernum ,pob.naccumarrvnum ,pob.nprice,pob.nmoney
from po_order_b as pob
INNER join po_order as po on pob.fk_order = po.pk_order
INNER JOIN po_invoice_b as p on p.corder_bid = pob.pk_order_b
#我描述下需求吧
#po_order_b po_order po_invoice_b 我要查询这个三个表中的记录
#其中以po_order_b表为主,表中多少行就需要显示多少行
#po_order_b 表中的pk_order和po_order表中fk_order相同
#查询只有相等时显示的记录 显示其中的某个字段
#再需要查询
#po_order_b 表中的pk_order_b和po_invoice_b表中corder_bid相等
#的记录po_invoice_b表中的某个字段
select pob.pk_order_b, po.cendormangid,pob.nordernum ,pob.naccumarrvnum ,pob.nprice,pob.nmoney
from po_order_b as pob left join po_order as po on pob.fk_order = po.pk_order这样是2个表的联合查询没有问题了
我现在想把查询出来的记录
返回的字段pob.pk_order_b和po_invoice_b表中corder_bid字段相等时显示po_invoice_b表中num值
没有就显示零 就这样
select p.corder_bid,pob.pk_order_b, po.cendormangid,pob.nordernum ,pob.naccumarrvnum ,pob.nprice,pob.nmoney
from po_order_b as pob
left join po_order as po on pob.pk_order= po.fk_order
left JOIN po_invoice_b as p on p.corder_bid = pob.pk_order_b
and po
这样不可以吗?
楼主#po_order_b 表中的pk_order和po_order表中fk_order相同,这里描述怎么和你的on条件不一样?