MySql 查询只返回部分信息

MySql Query only returning some information

我有 VB.net Winforms 程序,可以将客户报价条目保存到 MySql 数据库中。每个条目都有几个字段,其中之一是“NewEntryDate”。这是为了显示首次创建条目的时间。我需要调用两个日期之间的条目,但是当我 运行 以下查询时,它 returns all 在 select 区域下符合条件的条目语句,不仅是两个日期之间的条目。

用户selects 来自两个日期时间选择器的两个日期。

query = "select NewEntryDate,TimeOfEntry,QuoteNumber,QuoteStatus,
                ClientName, POCTel,POCEmail 
        from database.db_table 
        where QuoteStatus= 'Quote Sold' 
        OR QuoteStatus= 'Quote Lost' 
        AND NewEntryDate BETWEEN str_to_date('" & DateTimePicker7.Text & "','%Y-%m-%d') 
        AND str_to_date('" & DateTimePicker10.Text & "','%Y-%m-%d') 
        order by NewEntryDate DESC, TimeOfEntry DESC"

希望能帮到你。

AND 优先于 OR,因此您需要将此表达式括起来:

(QuoteStatus= 'Quote Sold' OR QuoteStatus= 'Quote Lost')

或者,您可以使用 IN 运算符代替 OR:

QuoteStatus IN ('Quote Sold', 'Quote Lost')

你想要披萨还是汉堡和薯条?

上面的语句是否等同于:

您要披萨还是(汉堡和薯条)?

你想要一份(披萨或汉堡)和薯条吗?