【问题标题】:MySql SQL_NO_CACHE Issue Between 5.0 And 5.5MySql SQL_NO_CACHE 5.0 和 5.5 之间的问题
【发布时间】:2011-05-19 23:29:21
【问题描述】:

以下查询适用于 MySql 5.0

SELECT SQL_NO_CACHE
    ItemId,
    AnotherColumn
FROM
    TableOne
UNION
SELECT SQL_NO_CACHE
    ItemId,
    AnotherColumn
FROM
    TableTwo

但在 MySql 5.5 中出现以下错误:

MySql.Data.MySqlClient.MySqlException: 不正确的使用/放置 'SQL_NO_CACHE'

对于 UNION 查询,SQL_NO_CACHE 的正确位置是什么?

如果我把SQL_NO_CACHE放在UNION的一侧,会不会影响到两侧?

【问题讨论】:

    标签: mysql


    【解决方案1】:

    从 MySql 5.5.3 开始,您只需要在 UNION 查询的第一个 SELECT 中指定 SQL_NO_CACHE:

    SELECT SQL_NO_CACHE
        ItemId,
        AnotherColumn
    FROM
        TableOne
    UNION
    SELECT
        ItemId,
        AnotherColumn
    FROM
        TableTwo
    

    它适用于整个查询。如果您尝试在随后的 SELECT 语句中指定它,则会出错(现在也允许在子查询中使用它)。

    【讨论】:

      猜你喜欢
      • 2013-10-04
      • 2016-04-22
      • 1970-01-01
      • 1970-01-01
      • 2021-03-03
      • 1970-01-01
      • 1970-01-01
      • 2012-01-27
      • 2011-12-12
      相关资源
      最近更新 更多