【问题标题】:Ms access select data greater than datetime range女士访问选择数据大于日期时间范围
【发布时间】:2012-12-07 19:15:10
【问题描述】:

如何选择高于此日期时间范围的毫秒访问数据

like select * from logevents where logTime>='12/6/2012 3:54:15 PM'

logTime 是日期时间字段

【问题讨论】:

  • 您的查询有什么问题?
  • 不要用引号引起来。要么保留日期,要么在其周围添加# 符号。它应该在 WHERE logTime >= 12/04/12 时运行良好,与 12/03/2012 相比,12/4/12 甚至都不挑剔。

标签: ms-access datetime ms-access-2007


【解决方案1】:

在日期的每一端添加 # 号可让 Access 知道这是一个日期类型。

select * from logevents where logTime>=#12/6/2012 3:54:15 PM#

【讨论】:

    【解决方案2】:

    这取决于您的 Access 数据库是否以 ANSI 92 模式创建/打开:
    非 ANSI 92: Access 在日期前后使用 # ... # 并使用 *(多个字符)和 ? (一个字符)用于使用 LIKE 时的通配符。例如:

    SELECT * FROM logevents WHERE logTime>=#12/6/2012# AND description 比如'错误'

    ANSI 92: Access 在日期前后使用“...”并使用 % 和 ?使用 LIKE 时用于通配符。这种模式看起来更像 MySQL、Oracle 和 MSSQL 如何处理日期和通配符。例如:

    SELECT * FROM logevents WHERE logTime>='12/6/2012' AND description 比如'%error%'

    请务必检查日期格式设置。它可以 dd/mm/yyyy 或 dd-mm-yyyy 或其他,这取决于您的区域设置。只需检查您的表格中的日期列以获取示例数据。

    在 Access 2007 中切换到 ANSI-92,但这应该不难应用于不同的版本: - 打开 MS 访问 - 单击左上角的 Office 按钮 -单击“访问选项”按钮 - 从左窗格中选择“对象设计器” -查找“查询设计”部分,有一个选项“SQL Server Compatible Syntac (ANSI 92)。 - 如果您有一个打开的数据库,您可以检查“此数据库”或检查“新数据库的默认设置”以获取所有新数据库的默认设置 - 单击“确定”按钮接受更改

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-26
      • 2013-01-02
      • 2013-03-27
      • 1970-01-01
      • 2012-04-12
      • 1970-01-01
      • 2017-12-30
      相关资源
      最近更新 更多