我试图通过多列文本和备注来搜索某些短语,并列出了其他我不想看到的短语。假设如下表(请跳过约3NF任何笑话,这是一个减少。除非你有关于3NF *一个很好的笑话)Ms-Access:连接,创建别名,使用别名
stories:
id, title, author, publisher, content
例。我想找到所有提及(在任何领域)'苹果'但黑名单'苹果酱'**的故事。
SELECT stories.id, [stories.title] & " " & [stories.author] & " " & [stories.publisher] & " " & [stories.memo] AS allMyText
FROM stories
WHERE ((([allMyText]) Like "*apples*" And ([allMyText]) Not Like "*applesauce*"));
唯一的问题是,无论我尝试做什么,我都不能在where子句中使用我的别名。我找不到关于这个问题的任何文件:
1)这种方法可行吗? 2)不会意味着我会在每个行迭代上执行多个字符串连接吗?
任何文档链接将非常有帮助。
(*请问“键,整个键,并没有什么,但关键帮帮我吧科德”算不算一个玩笑?意见欢迎。
**为什么?因为我不想被提醒不要在苹果酱制作过程中每天都会发生苹果种族灭绝事件。)
子查询方法真的不会有帮助,在我看来 - 它是过度设计解决方案的问题。顺便说一句,如果人们只是使用Access查询构建器来处理这种事情,他们会避免这种问题(它会产生正确的Jet/ACE兼容的SQL)。 – 2011-02-06 00:20:09
@ David-W-Fenton:OP已经接受了这个答案,所以现在回过头来定义你的意思是“真的不会有帮助”。另外,我想看看你的“解决方案”,以便我们可以评估它的“过度工程”性。 – onedaywhen 2011-02-07 09:39:24