【问题标题】:what is "DESC LIMIT 1" used for in plpgsql?plpgsql 中使用的“DESC LIMIT 1”是什么?
【发布时间】:2015-06-20 14:53:33
【问题描述】:

plpgsql 中的“DESC LIMIT 1”是做什么用的??? 在这个例子中

ORDER BY t.timestamp02 DESC LIMIT 1 

【问题讨论】:

    标签: postgresql triggers


    【解决方案1】:

    这不是真正的DESC LIMIT 1DESC 连接到ORDER BY t.timestamp02 DESCLIMIT 1 是第二个子句。

    文档会告诉您,DESC 将导致 ORDER 按降序排列,LIMIT 1 会将结果集限制为 1 个项目。

    本质上,这些子句一起表示“给我具有最大 t.timestamp02 值的结果”。

    【讨论】:

    • 嗨 Sami,你的意思是我应该输入 SQL... ORDER BY t.timestamp02 DESC AND LIMIT 1
    • 我说的对吗?这也意味着我将获得具有最高值的时间戳,最近的时间戳? (最后一个时间戳)??
    • @Natysiu16 不,该子句是正确的,没有任何更改。它只是两个部分,DESC 未连接到 LIMIT 部分,但 ORDER 部分
    • 如果我想将最后一个时间戳存储到变量中会发生什么,我应该键入... ORDER BY t.timestamp02 DESC AND LIMIT 1 INTO t_ix;
    • 我尝试输入... ORDER BY t.timestamp02 DESC AND LIMIT 1 它给了我和错误提示... 在“AND”处或附近出现语法错误我应该如何输入??
    【解决方案2】:

    DESC 表示顺序将降序(最大值在前)。 LIMIT 1 表示最多只返回一个结果。

    因此您将获得最高的timestamp02 值。

    【讨论】:

    • 那么,如果我使用带有时间戳类型的列的 ORDER BY DESC LIMIT 会发生什么?我会得到最高吗?时间戳,也就是最近的时间戳(最后一个时间戳)???我说的对吗?
    • @Natysiu16:你看答案的最后一句话了吗?是的,最高(最近的)值。
    • 感谢 TJ Crowder,非常感谢,您能帮我解答这个问题吗?它也与 postgreSQL 相关,我将非常感谢你。感谢高级stackoverflow.com/questions/30942869/…
    猜你喜欢
    • 2016-03-18
    • 2021-01-07
    • 1970-01-01
    • 2012-03-07
    • 1970-01-01
    • 1970-01-01
    • 2014-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多