2012-04-18 80 views
4

我可以在Like运算符中使用表列吗?我创建了一个例子,VBA Access SQL - LIKE运算符内的字段

表A

Names     Location 
Albert Smith Senior  Aberdeen 
John Lee     London 
Michael Rogers Junior Newcastle 
Mary Roberts    Edinburgh 

表B

Names 
Albert Smith 
John Lee 
Michael Rogers 

我想要做一个查询,如:

SELECT TableA.Location 
into NewTable 
FROM TableA 
WHERE TableA.Names Like '*[TableB.Names]*'; 

在这种情况下,将有爱丁堡的玛丽罗伯茨没有比赛,但前三个位置将被退回。

是否可以将一个列放入类似的语句中? 如果没有人有任何想法我可以做到这一点?

希望你能帮助

PS,因为这被删除,斜体文字,也是我读了关于使用%,而非但是这并没有为我工作,我不能用一个实际的星号。

+0

@TBone ... VBA SQL中是否有“in”语句? – MikeTWebb 2012-04-18 21:27:23

回答

4

您可以加入两个表和JOIN子句中使用LIKE

SELECT TableA.Location 
into NewTable 
FROM TableA 
INNER JOIN TableB ON TableA.Names LIKE TableB.Names & '*'; 

老实说,我不知道,你可以在访问之前,我尝试过这样做只是现在:-)

+0

哇,谢谢。这是完美的。 – TBone2087 2012-04-18 21:55:34

+2

如果你想使用'%'作为通配符,把'LIKE'改为'ALIKE' '... TableA.Names ALIKE TableB.Names & '%';' – onedaywhen 2012-04-19 07:53:56