2015-11-03 46 views
-1


表1
IDtable3_fk
抓取最终行基于导致行的列时另一列匹配

1 -101
2 -103
3 -104
4 -101 5 -105

---------- --------------

表2

ID(同表1)table4_fk
1 -1001
2 -1003
3 -1001
4 -1002
5 -1001
************* ****************

如果我加入基于id的表1和表2,那么结果行将是一些数字,但我想从表中得到所有结果行2根据table4_fk我做第一次加入后
可以说:

SELECT * FROM表1为T1连接上t1.id = t2.id 表2 T2其中t1.table3_fk = -101
结果将是:

IDtable4_fktable3_fk
1 -1001 -101
4 -1002 -101
查询:所需-------------------

------------------------------------------------ -
所需的结果是:(看比赛后table4_fk列)

IDtable4_fktable3_fk
1 -1001 -101
3 -1001 -104
4 -1002 -101
5 -1001 -105
------------------------------------------ --------------

请提出您的ides interms任何sql查询知识。

谢谢
Ĵ

+0

选择X *从表X连接(查询这里)y on y.table4fk = x.table4fk – Strawberry

回答

0
select * from Table1 as t1 join Table2 t2 on t1.id = t2.id 
where t1.table3_fk <> -103 

试试这个代码

+0

我怀疑这是OP想要的,但是根据问题中提供的信息的缺乏,解决方案似乎是有效的。 – Strawberry

+0

基本上我只知道约-101编号(这是一次一个) –

+0

请不要认为该编号是已知的...请给我广义的解决方案。 –

-1

预期该查询应该工作:

SELECT t1.id, t2.table4_fk, t1.table3_fk 
FROM Table1 AS t1 
    JOIN Table2 t2 ON t1.id = t2.id 
WHERE t1.table3_fk <> '-103' 

输出:

ID table4_fk table3_fk

1 -1001 -101

3 -1001 -104

4 -1002 -101

5 -1001 -105

+0

这不是什么操作,因此他们参考table4fk – Strawberry

+0

@Strawberry糟糕,得到了表结构错误。你能分享正确的查询吗? –

+0

当你低调回答,请公平解释。 –

相关问题