【问题标题】:Multiplication within SQL statements?SQL语句中的乘法?
【发布时间】:2011-03-06 03:26:46
【问题描述】:
$query = mysql_query('SELECT * FROM submissions ORDER BY (votes * id) DESC');

这给了我一个错误。有没有办法做到这一点?

【问题讨论】:

  • 所以....我们可以猜出错误是什么吗?投票是什么类型的?
  • 很可能是类型问题,请给出表定义和错误信息
  • 附带说明,您应该避免在代码中使用 select *,如果有人添加一列,您的代码会中断!
  • 此查询适用于我的 SQL 版本。错误是什么?

标签: php sql syntax multiplication


【解决方案1】:
SELECT *, (votes * id) AS x FROM submissions ORDER BY x DESC

你会多写一栏,但我想我会工作=|

【讨论】:

    【解决方案2】:

    我邀请您按投票数和 ID 获取提交顺序列表。
    您可以使用如下代码:

    $query = mysql_query('SELECT * FROM submissions ORDER BY votes DESC, id DESC');
    

    【讨论】:

      【解决方案3】:

      只要类型正确,您给出的 SQL 就有效。至少在 Postgres 中。你用的是什么数据库?

      【讨论】:

        猜你喜欢
        • 2017-05-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多