Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql MS ACCESS:查询太复杂?_Sql_Ms Access_Ms Access 2010_Ms Access 2007_Ms Access 2013 - Fatal编程技术网

Sql MS ACCESS:查询太复杂?

Sql MS ACCESS:查询太复杂?,sql,ms-access,ms-access-2010,ms-access-2007,ms-access-2013,Sql,Ms Access,Ms Access 2010,Ms Access 2007,Ms Access 2013,以下是导致错误的代码: SELECT [serial number], [page count], [minutes], [status], [activity], [venue short name], [assigned to], [publishing format name], [query], [photo], [notes], [tabular], [partpub], [statusdate] FROM MyProd WHERE ((MyProd.[Status] = [Forms

以下是导致错误的代码:

SELECT [serial number], [page count], [minutes], [status], [activity], [venue short name], [assigned to], [publishing format name], [query], [photo], [notes], [tabular], [partpub], [statusdate]
FROM MyProd
WHERE ((MyProd.[Status] = [Forms]![My Prod]![StatusFilter]) 
        OR ([Forms]![My Prod]![StatusFilter] Is Null))
AND ((myprod.[activity] = [Forms]![My Prod]![ActivityFilter]) 
        OR ([Forms]![My Prod]![ActivityFilter] Is Null))
AND ((myprod.[activity] = [Forms]![My Prod]![ActivityFilter]) 
        OR ([Forms]![My Prod]![ActivityFilter] Is Null))
AND ((myprod.[venue short name] Like "*" & [Forms]![my prod]![venuefilter] & "*") 
        OR ([Forms]![my prod]![venuefilter] Is Null))
AND ((myprod.[assigned to] = [Forms]![My Prod]![ParticipantFilter]) 
        OR ([Forms]![My Prod]![ParticipantFilter] Is Null))
AND ((myprod.[publishing format name] = [Forms]![My Prod]![PubFilter]) 
        OR ([Forms]![My Prod]![PubFilter] Is Null))
AND ((myprod.[query] = [Forms]![My Prod]![PubFilter]) 
        OR ([Forms]![My Prod]![PubFilter] Is Null))
AND (iif([Forms]![My Prod]![SpecialRequestFilter]="Photo", MyProd.[Photo] Like -1, ([Forms]![My Prod]![PubFilter] Is Null)))
AND (iif([Forms]![My Prod]![SpecialRequestFilter]="Query", MyProd.[Query] Like -1, ([Forms]![My Prod]![PubFilter] Is Null)))
AND (iif([Forms]![My Prod]![SpecialRequestFilter]="Table", MyProd.[Tabular] Like -1, ([Forms]![My Prod]![PubFilter] Is Null)))
AND (iif([Forms]![My Prod]![SpecialRequestFilter]="Partial Pub", MyProd.[partpub] Like -1, ([Forms]![My Prod]![PubFilter] Is Null)))
AND (iif([Forms]![My Prod]![SpecialRequestFilter]="Has Notes", MyProd.[Notes] <> "", ([Forms]![My Prod]![PubFilter] Is Null)))
AND (IIf((([Forms]![My Prod]![SD]<>"") AND ([Forms]![My Prod]![ED]<>"")), MyProd.[statusdate] Between [Forms]![My Prod]![SD] AND [Forms]![My Prod]![ED], (MyProd.[StatusDate] Like "*" OR MyProd.[StatusDate] Is Null)))
选择[序列号],[页数],[分钟],[状态],[活动],[场馆简称],[分配给],[发布格式名称],[查询],[照片],[备注],[表格],[部分发布],[状态日期]
来自MyProd
其中((MyProd.[Status]=[Forms]![MyProd]![StatusFilter])
或([Forms]![My Prod]![StatusFilter]为空)
和((myprod.[activity]=[Forms]![myprod]![ActivityFilter])
或([Forms]![My Prod]![ActivityFilter]为空)
和((myprod.[activity]=[Forms]![myprod]![ActivityFilter])
或([Forms]![My Prod]![ActivityFilter]为空)
和((myprod.[场馆简称]如“*”和[Forms]![myprod]![venuefilter]&“*”)
或([Forms]![my prod]![venuefilter]为空)
和((myprod.[分配给]=[Forms]![myprod]![ParticipantFilter])
或([Forms]![My Prod]![ParticipantFilter]为空)
和((myprod。[发布格式名称]=[Forms]![myprod]![PubFilter])
或([Forms]![My Prod]![PubFilter]为空)
和((myprod.[query]=[Forms]![myprod]![PubFilter])
或([Forms]![My Prod]![PubFilter]为空)
和(iif([Forms]![My Prod]![SpecialRequestFilter]=“Photo”,MyProd.[Photo]类似-1,([Forms]![My Prod]![PubFilter]为空)))
和(iif([Forms]![My Prod]![SpecialRequestFilter]=“Query”,MyProd.[Query]类似-1,([Forms]![My Prod]![PubFilter]为空)))
和(iif([Forms]![My Prod]![SpecialRequestFilter]=“Table”,MyProd.[表格]类似于-1,([Forms]![My Prod]![PubFilter]为空)))
和(iif([Forms]![My Prod]![SpecialRequestFilter]=“部分发布”,MyProd.[partpub]类似-1,([Forms]![My Prod]![PubFilter]为空)))
和(iif([Forms]![My Prod]![SpecialRequestFilter]=“Has Notes”,MyProd.[Notes],([Forms]![My Prod]![PubFilter]为空)))
和(IIf(([Forms]![My Prod]![SD]“”)和([Forms]![My Prod]![ED]“”),MyProd.[statusdate]介于[Forms]![My Prod]![SD]和[Forms]![My Prod]![ED],(MyProd.[statusdate]类似“*”或MyProd.[statusdate]为空)))

我看不出这有多复杂。。。你能推荐一个简单的版本吗?这些过滤器为空时,结果查询应返回所有。谢谢。

尝试。尝试将Iif开关中的Like-1更改为=-1。当你有固定的比较时,使用Like可能对你没有帮助。老实说,通过这么多比较,您最好根据所选内容动态构建查询字符串。在此处查看Allan Brownes搜索表单