【发布时间】:2015-10-06 14:07:41
【问题描述】:
我有 2 个表如下:
table1
ID Name Test
A011 John 1
A012 Lynda 1
A013 Micheal 1
A014 Jack 0
A021 Joe 1
A015 Paul 0
table2
ID Done
A011 1
A012 1
我想从 table1 中选择所有具有ID 的行,其中三个首字母等于A01,test 字段为1,还有table2 中不存在ID。
我试过这个查询:
SELECT a.* FROM table1 a LEFT JOIN table2 b ON a.ID = b.ID
WHERE a.test = 1 AND b.ID IS NULL
结果是 2 行,ID A013 和 A021。我尝试使用LEFT(ID,3) 来获得ID 和A01,但是,我无法实现我想要的。
如何只过滤 ID 以A01 开头的记录?
【问题讨论】:
-
嗯...你试过了吗?
Inner join可以提供帮助。 -
到目前为止你尝试过什么?请编辑您的问题,添加您现在的查询。
-
@GustavoStraube,我编辑了我的问题,请看一下。谢谢
-
尝试将此条件添加到您的
WHERE子句:a.ID LIKE 'A01%'。让我知道它是否有效。 -
@GustavoStraube 非常感谢,效果很好。谢谢!!!!如果我想添加 ORDER BY 和 LIMIT,它仍然有效吗?
标签: php mysql conditional-statements