mysql - 复合 MySQL 查询问题

标签 mysql

首先,我想介绍一下我所遵循的基本结构。假设我有一个名为 td_idea 的表,其结构如下:

|-------------------------------------------------------------------|
| idea_id  |  idea_name   |  idea_submitter_id   |   idea_status    |
|----------|--------------|----------------------|------------------|

然后我有一个名为 td_idea_contribution 的表,用于显示用户对特定想法所做的贡献:

|-------------------------------------------------|
| contribution_id  |  idea_id   |  submitter_id   |
|------------------|------------|-----------------|

最后是 td_idea_contribution_like 表:

|-------------------------------------------------|
| like_id  |  contribution_id   |  submitter_id   |
|----------|--------------------|-----------------|

我想显示基于特定idea_id的所有贡献, 列出的每个贡献还将显示该特定贡献的投票数。

这是我试图使用查询实现的目标:

$sql="SELECT td_idea.*,td_idea_contribution.*,COUNT(td_idea_contribution_like.*) AS tot_like 
                                      FROM td_idea,td_idea_contribution,td_idea_contribution_like
                                     WHERE td_idea.idea_id=td_idea_contribution.idea_id 
                                     AND td_idea_contribution.contribution_id=td_idea_contribution_like.contribution_id
                                     AND td_idea.idea_id='$id'
                                     AND td_idea_contribution.contribution_type='Design' ORDER BY tot_like DESC";

但是 SQL 字符串显示错误。错误如下

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*) AS td_idea_contribution_like.tot_like FROM' at line 1

最佳答案

COUNT(td_idea_contribution_like.*) 是这里的问题

* 表示您在此处指定了多个列。

关于mysql - 复合 MySQL 查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16728618/

相关文章:

php - 将sql.zip文件导入phpmyadmin时出现内存大小错误

c# - MySql "SET @variable"在 C# 代码中抛出 fatal error

mysql - Rails MYSQL 迁移仅在测试时失败?

java - 将 Mysql 转换为 Sqlite 数据库

mysql - 从sql查询中的url获取id

mysql - 允许在 HAVING 子句中使用别名的性能影响

php - 复选框和文本不想显示值

mysql - 如何删除 mysql 中表的列,其中该列的所有值为空。我有 38GB 的​​表,因此需要性能。

php - 从 cakephp 中的另一个表获取表的计数

MySQL 获取最后一次出现的重复行