SELECT column FROM tab1 WHERE test = test AND(SELECT col FROM tab2 WHERE qwe = qwe)?可能吗?

如何使这样的查询:SELECT column FROM tab1 WHERE test = test AND(SELECT col FROM tab2 WHERE qwe = qwe)?可能吗?

SELECT column1 FROM table1 WHERE ppp=$parameter 

AND (SELECT * FROM table2 WHERE parameter=$parameter AND qweqwe=$parameter2)

PS:“$”不是从PHP,我只是表明这个值是可变的。

其实,我需要AND qweqwe<650在第二个查询

回答:

也许是这样的:

SELECT 

column1

FROM

table1

WHERE

ppp=$parameter

AND EXISTS

(

SELECT

NULL

FROM

table2

WHERE

table1.ppp=table2.parameter

AND qweqwe<$parameter2

)

回答:

究竟是你想怎么办? 第一后的事情,应该是合乎逻辑的,例如

... AND 650<(SELECT qweqwe FROM table2 WHERE parameter=$parameter2) 

回答:

SELECT column1 FROM table1 WHERE parameter=$parameter 

AND exists

(SELECT 1 FROM table2 WHERE table2.parameter=table1.parameter AND table2.qweqwe=$parameter2)

回答:

这取决于你的数据。 您可以使用如先前答案中所示的exists或使用join。

SELECT column1 FROM table1 

join table2 on table1.ppp=table2.parameter and table2.qweqwe=$parameter2

where table1.ppp=$parameter

在大多数情况下,加入会比现在快得多。但事实证明,如果表格1中的每个记录有多于一个记录,则必须使用不同的表格。

以上是 SELECT column FROM tab1 WHERE test = test AND(SELECT col FROM tab2 WHERE qwe = qwe)?可能吗? 的全部内容, 来源链接: utcz.com/qa/257576.html

回到顶部