MS Access VBA、SQL 脚本:In()、<> 和语法
MS Access VBA, SQL Script: In(), <>, AND syntaxes
我有一个脚本需要显示流派并过滤掉空值。
ReturnBooks = "Select * from [Books] where ([Type] IN ('B','K' ,'R' ,'C') AND [Type] <> 'No' AND [BookGenre] IS NOT NULL)) Order By [LName] ASC"
我需要 BookGenre 不为空,但语法 return 没有。最初代码没有那一行,它确实 return 一些结果。
ReturnBooks = "Select * from [Books] where ([Type] IN ('B','K' ,'R' ,'C') AND [Type] <> 'No') Order By [LName] ASC"
return这本书的类型。
我如何在脚本中加入 IS NOT NULL?
例如,书籍 table 会 return 作者姓氏,具体取决于类型。我还从脚本中得到数据类型不匹配。
您的查询中括号不平衡。
并且您需要在您的数据库中显示您 table 的一些示例数据。
让我们检查一下 where 子句:
([类型] IN ('B','K' ,'R' ,'C') AND [类型] <> 'No') AND [BookGenre] 不为空))
如果你的 [Type] 在 ('B','K' ,'R' ,'C') 那么它永远不会是 'No', 所以, "And Type <> 'No'"没用。
"IS NOT NULL" phare 与 mysql、sqlserver 配合良好。
如果你只需要BookGenre不为null的记录,就用这个:
ReturnBooks = "SELECT * FROM [Books] WHERE [BookGenre] IS NOT NULL ORDER BY [LName] ASC"
如果您需要过滤 BookGenre 为空的记录,试试这个:
ReturnBooks = "SELECT * FROM [Books] WHERE ([BookGenre] IS NOT NULL) AND ([BookGenre] <> '') ORDER BY [LName] ASC"
希望对您有所帮助。
我有一个脚本需要显示流派并过滤掉空值。
ReturnBooks = "Select * from [Books] where ([Type] IN ('B','K' ,'R' ,'C') AND [Type] <> 'No' AND [BookGenre] IS NOT NULL)) Order By [LName] ASC"
我需要 BookGenre 不为空,但语法 return 没有。最初代码没有那一行,它确实 return 一些结果。
ReturnBooks = "Select * from [Books] where ([Type] IN ('B','K' ,'R' ,'C') AND [Type] <> 'No') Order By [LName] ASC"
return这本书的类型。
我如何在脚本中加入 IS NOT NULL?
例如,书籍 table 会 return 作者姓氏,具体取决于类型。我还从脚本中得到数据类型不匹配。
您的查询中括号不平衡。
并且您需要在您的数据库中显示您 table 的一些示例数据。
让我们检查一下 where 子句: ([类型] IN ('B','K' ,'R' ,'C') AND [类型] <> 'No') AND [BookGenre] 不为空))
如果你的 [Type] 在 ('B','K' ,'R' ,'C') 那么它永远不会是 'No', 所以, "And Type <> 'No'"没用。
"IS NOT NULL" phare 与 mysql、sqlserver 配合良好。
如果你只需要BookGenre不为null的记录,就用这个:
ReturnBooks = "SELECT * FROM [Books] WHERE [BookGenre] IS NOT NULL ORDER BY [LName] ASC"
如果您需要过滤 BookGenre 为空的记录,试试这个:
ReturnBooks = "SELECT * FROM [Books] WHERE ([BookGenre] IS NOT NULL) AND ([BookGenre] <> '') ORDER BY [LName] ASC"
希望对您有所帮助。