【问题标题】:Row_number syntax error (Wordpress)Row_number 语法错误 (Wordpress)
【发布时间】:2015-12-01 18:44:10
【问题描述】:

我需要帮助。我是 SQL 和 Wordpress 的初学者。

这是我的查询。

SELECT ROW_NUMBER() OVER (ORDER BY id) AS player_num,
CONCAT(name,' ',last_name) AS player_name, date_of_birth, phone, email 
FROM barbara_players 
ORDER BY last_name ASC

显示语法错误。

#1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '(ORDER BY id) AS player_num, CONCAT(name,' ',last_name) AS player_name, date_of_' 附近使用正确的语法 MySQL 在 WP 中

我不知道为什么。我想我做到了就像在教程中一样。是的,我在 Wordpress 中工作。我想显示行数和其他提到的列数。

【问题讨论】:

  • Wordpress 使用哪个 DBMS? exact 错误信息是什么?
  • #1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '(ORDER BY id) AS player_num, CONCAT(name,' ',last_name) AS player_name, date_of_' 附近使用正确的语法 MySQL 在 WP 中。跨度>
  • MySQL 不支持现代 SQL 之类的窗口函数。

标签: mysql sql window-functions


【解决方案1】:

考虑使用条件计数聚合子查询来返回行号。下面按姓氏分配递增的行号:

SELECT 
     (SELECT Count(*) 
     FROM barbara_players t2 
     WHERE t1.last_name >= t2.last_name) AS player_num, 
     CONCAT(t1.name,' ', t1.last_name) AS player_name, 
     t1.date_of_birth, t1.phone, t1.email 
FROM barbara_players t1
ORDER BY t1.last_name ASC

【讨论】:

    【解决方案2】:

    试试这个 计数 ROW_NUMBER() OVER (PARTITION BY id).....

    这里还有一个关于 OVER 子句的视频。

    Over Clause in SQL

    【讨论】:

      猜你喜欢
      • 2012-09-09
      • 2015-03-03
      • 2022-01-12
      • 1970-01-01
      • 2012-07-17
      • 2016-07-12
      • 1970-01-01
      • 2012-06-17
      • 2015-08-27
      相关资源
      最近更新 更多