当前位置: 首页 > 面试题库 >

GROUP BY lname ORDER BY显示错误的结果

公西岳
2023-03-14
问题内容

我编写的此查询列出了销售竞争中的前25名,但显示的是错误的结果。

用户没有显示应该在列表上的位置。知道可能是什么问题吗?

SELECT u.fname, u.lname, SUM(p.point) as points 
  FROM comp_sale s, comp_product p, comp_user u
 WHERE s.prod_id = p.product_id 
   AND s.sale_id = u.wp_id 
 GROUP BY lname 
 ORDER BY points DESC limit 25

表comp_user:

user_id int(11) NO  PRI NULL    auto_increment
fname   varchar(255)    NO      NULL    
lname   varchar(255)    NO      NULL    
storename   varchar(255)    NO      NULL    
city    varchar(255)    NO      NULL    
phone   varchar(255)    NO      NULL    
wp_id   int(11) NO      NULL    
type    varchar(255)    NO      NULL

表comp_sale

prod_id int(11) NO      NULL    
sale_id int(11) NO      NULL    
serial  varchar(255)    NO      NULL

表comp_product

product_id  int(11) NO  PRI NULL    auto_increment
description varchar(255)    NO      NULL    
type    varchar(255)    NO      NULL    
cylinda_num int(11) NO      NULL    
eel_num int(11) NO      NULL    
point   int(11) NO      NULL

问题答案:

尝试使用适当的ANSI标准GROUP BY

SELECT
    u.fname, u.lname, SUM(p.point) as points
FROM 
    comp_sale s
    JOIN
    comp_product p ON s.prod_id = p.product_id 
    JOIN
    comp_user u ON s.sale_id = u.wp_id
GROUP BY
    u.fname, u.lname
ORDER BY 
    points DESC 
LIMIT 25

另外,使用明确的JOIN来保持清晰



 类似资料:
  • 问题内容: 我有一个数据库表看起来像这样 当我运行此查询时,应该不显示任何行,因为不存在具有value的行: SELECT * FROM tableName WHERE ID =‘101foo2’ 我得到的结果具有相同的ID,但没有单词 如果我的查询是如何显示具有ID的行 问题答案: 您正在混合类型。 是一个整数(或数字)。您正在将其与字符串进行比较。因此,MySQL需要确定用于比较的类型。使用什

  • 我已经在Android studio上安装了颤振,每当我在Android studio上导入新项目时,它会显示“Dart未配置下载Dart SDK或打开Dart设置” 到目前为止,代码还不错。 当我打开省道设置时 Idk在每个项目中尝试了什么,只有在新的颤振项目运行良好时才尝试。颤振版本是2.8.1 Dart版本是2.15.1 Android Studio Arctic Fox | 2020.3.

  • 我使用Apache Mina sshd将SSH服务器设置为SFTP服务器。我实现了自己的,以便为登录的用户创建特定的目录。当我用FileZilla打开到服务器的连接时,目录结构显示错误。 在根目录视图中,显示一个空文件夹。这个不存在。应该只有两个目录。“上传”和“下载”。 当我打开上传目录时,我再次看到一个不应该显示的空目录,因为它不存在。此外,还显示了另一个上传目录。我无法打开它,因为它说/up

  • 致命错误:未捕获的错误:调用/home/prasanth/projects/ishen1/index中的未定义函数mysqli_result()引发了堆栈跟踪:#0{main}

  • 我得到空白页,而不是错误消息在浏览器中。但我可以查看错误在var/log/system.log 我安装了最新的magento 1.8 CE。我正在使用Ubuntu,我的站点根目录位于/var/www/chmoded 777。我已将其别名链接到我的主文件夹并从中进行操作。 我还没有取消评论index.php. 我将错误/local.xml.sample重命名为local.xml. 我还添加了 到.