如何从Access窗体显示所有查询结果

时间:2018-03-07 04:03:33

标签: ms-access ms-access-forms

我有一个访问表单,我用它来通过引用查询标准中的表单字段来过滤查询。

打开表单后,用户可以从以下字段下拉列表中选择特定条目。

但是,如果用户没有选择条目,请说他们将业务单位留空,我希望查询返回该字段的所有条目,用户没有这样做输入数据,例如它将返回所有业务单位。

我尝试按照下面的方式输入一个星号(*),并尝试将这些字段留空以使其返回所有条目,但它没有工作。

请问您如何获取查询以显示表单中用户未填充的任何字段的所有记录?

由于

enter image description here

我正在引用的查询如下:

enter image description here

查询的SQL位于

之下
@login_required
def assignments(request):

    terms = Course.objects.filter(students = request.user).values('term__season', 'term__year').distinct()
    courses = Course.objects.filter(students = request.user)
    assignments = Assignment.objects.filter(course__in=courses)

    if request.method == 'POST':

        # retrive ajax data
        data = request.POST
        course_subject = data['course_subject']
        course_number = data['course_number']
        course_section = data['course_section']
        term_season = data['term_season']
        term_year = data['term_year']

        # get the associated course for the click
        course = Course.objects.filter(subject = course_subject,
                                    number = course_number,
                                    section = course_section,
                                    term__year = term_year,
                                    term__season = term_season)

        # get the assignments associated with that course
        assignments = Assignment.objects.filter(course = course)

    context_dict = {
        'assignments': assignments,
        'courses': courses,
        'terms': terms,
    }

    return render(request, 'mainapp/assignments.html', context_dict)

1 个答案:

答案 0 :(得分:1)

一种解决方案可能是将WHERE子句中的等号运算符替换为LIKE运算符并结合使用通配符。

这样,如果值为空,则不会限制您的搜索。