【问题标题】:MySQL query indexing with timestamp structure具有时间戳结构的 MySQL 查询索引
【发布时间】:2009-05-20 10:21:48
【问题描述】:

我想知道在 MySQL 中存储与时间戳相关的用户查询的最佳方式是什么。假设我只有两个输入,一个用户的“查询”和“时间戳”...

我可以创建一个带有字段(idquerycounttimestamp_list)的 MySQL 表,其中:

id 是查询的唯一标识符,
query 是文字查询字符串,
count 是输入查询的(不断更新的)次数,以及
timestamp_list 是 LONGTEXT 或带有搜索查询的时间列表的东西。

有没有更好的方法来使用我不熟悉的索引来关联这些?在 LONGTEXT 中存储时间戳列表似乎很愚蠢,但很容易;也许我应该创建一个单独的表,例如:

id
query_id(对应于第一个表中的id
timestamp

我可以将结果与第一个表连接起来。有什么想法吗?谢谢!

【问题讨论】:

    标签: mysql indexing


    【解决方案1】:

    如果您需要在执行每个查询时记录时间戳,我建议您有 2 个表:

     tbl_queries
      - id       INT
      - query    VARCHAR
    
     tbl_queries_performed
      - id         INT AUTOINCREMENT
      - query_id   INT
      - timestamp  CURRENT_TIMESTAMP
    

    每次您要记录查询时,请检查它是否已经在 tbl_queries 中,然后分别使用 query_id 在 tbl_queries_performed 中保存一个条目

    【讨论】:

    • 非常感谢!这澄清了事情。
    猜你喜欢
    • 2020-12-14
    • 1970-01-01
    • 2016-03-09
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多