Row_number 语法错误 (Wordpress)

Posted

技术标签:

【中文标题】Row_number 语法错误 (Wordpress)【英文标题】:Row_number syntax error (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 之类的窗口函数。 【参考方案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

【讨论】:

以上是关于Row_number 语法错误 (Wordpress)的主要内容,如果未能解决你的问题,请参考以下文章

Sql Query 在其中使用 row_number 时给出错误缺少运算符

在 MariaDB 中使用 ROW_NUMBER() 函数的问题

MySQL 语法中 OVER 和 PARTITION 的语法错误

在 discordjs 中找不到 mysql 语法错误

java连接sqlserver,提示语法错误

简单集合枚举的 MS SQL row_number/rank 替代方案