簡體   English   中英

在Access 2010中執行SQL子查詢時,“條件表達式中的數據類型不匹配”

[英]“Data type mismatch in criteria expression” when doing SQL subquery in Access 2010

這是我的簡化代碼(除了使SQL無法執行的一些基本元素之外):

select *
from (
    select replace(mytxtfield, "llama", "") as badones 
    from XYZ
)
where badones is not null;

當WHERE原因是時,外部查詢運行良好:

 badones like "ZZZ-[0-9][0-9][0-9]"

但是當WHERE原因包含多個(任何數字匹配模式的)LIKE時,它將中斷,例如:

badones like "ZZZ-[0-9][0-9]" OR 
badones like "ZZZ-[0-9][0-9][0-9]"

更多信息:

  • mytxtfield的類型為Text
  • 內部查詢中是否存在WHERE原因無關緊要,以檢查消除空/空字符串。
  • 64位辦公室

由於子查詢返回別名“ badnews”,因此您必須在外部查詢中使用它代替“ badones”。 以下不會產生任何錯誤:

SELECT *
FROM (select replace(mytxtfield, "llama", "") as badnews 
    from XYZ
)  
WHERE (((badnews) Like "ZZZ-[0-9][0-9]" Or (badnews) Like "ZZZ-[0-9][0-9][0-9]"));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM