如何形成正确的SQL语句?

时间:2020-05-03 08:54:29

标签: mysql sql

我想从表A中选择一个值,具体取决于表B中的一些值。我该如何实现。

Select 
    Ax 
from 
    TableA 
where TableA.Ay = (Select 
                       Bx 
                   from 
                        TableB 
                   where TableB.By = L AND TableB.Bz = M )

2 个答案:

答案 0 :(得分:1)

您可以尝试使用JOIN

Select TableA.Ax 
from TableA 
INNER JOIN TableB ON  TableA.Ay =  TableB.Bx
    AND TableB.By = L 
        AND TableB.Bz = M

答案 1 :(得分:1)

看起来还可以 唯一的事情是当您不确定Bx仅传送一行作为结果时

Select 
    Ax 
from 
    TableA a
where a.Ay IN (Select 
                       Bx 
                   from 
                        TableB b
                   where b.By = L AND b.Bz = M )

或者您必须使用LIMIT 1将表b的返回限制为1行

别名的使用也很有帮助,有助于更好地阅读和减少打字

相关问题