Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将联接/子选择查询与求和查询相结合 第一个MYSQL查询 第二_Mysql_Sql - Fatal编程技术网

将联接/子选择查询与求和查询相结合 第一个MYSQL查询 第二

将联接/子选择查询与求和查询相结合 第一个MYSQL查询 第二,mysql,sql,Mysql,Sql,有没有一种方法可以组合这两个查询,以便将sum_item_qt连接起来 在会员身份证上 我认为这个查询应该会给你你想要的答案: SELECT a.*, c.* FROM tableName a INNER JOIN ( SELECT member_ID, max(ID) maxID FROM tableName GROUP BY member_ID ) b ON a.

有没有一种方法可以组合这两个查询,以便将sum_item_qt连接起来
在会员身份证上

我认为这个查询应该会给你你想要的答案:

SELECT  a.*, c.*
FROM    tableName a
        INNER JOIN
        (
            SELECT member_ID, max(ID) maxID
            FROM tableName
            GROUP BY member_ID
        ) b ON  a.member_ID = b.member_ID AND
                a.ID = b.ID
        INNER JOIN
        (
            SELECT  member_ID, SUM(item_qt) sum_item_qt 
            FROM    tableName
            WHERE   timestamp >= DATE_SUB(NOW(), INTERVAL 5 MINUTE)
            GROUP BY member_id
        ) c ON  a.member_ID = c.member_ID
-- WHERE
-- ORDER BY
-- LIMIT
SELECT *
FROM table1 t
INNER JOIN
(SELECT MAX(id) AS id, SUM(item_qt) AS sum_item_qt
 FROM table1
 WHERE timestamp >= DATE_SUB(NOW(), INTERVAL 5 MINUTE)
 GROUP BY member_id) AS t2
ON t2.id = t.id
ORDER BY t.id DESC
LIMIT 10

我认为这个问题应该会给你你想要的答案:

SELECT *
FROM table1 t
INNER JOIN
(SELECT MAX(id) AS id, SUM(item_qt) AS sum_item_qt
 FROM table1
 WHERE timestamp >= DATE_SUB(NOW(), INTERVAL 5 MINUTE)
 GROUP BY member_id) AS t2
ON t2.id = t.id
ORDER BY t.id DESC
LIMIT 10

设置a.ID=b时,第一个内部联接上缺少SELECT[,ID]。[ID]我认为join还需要where子句。这是最有效的方法吗?在设置a.ID=b时,第一个内部联接缺少SELECT[,ID]。[ID]我认为join还需要where子句。这是最有效的方法吗?id是否按时间顺序排列,以便第一个查询的where子句可以移动到子查询中?如果是这样,
SUM(item_qt)
MAX(id)
可以使用相同的子查询找到。@TerjeD。这似乎奏效了。您应该回答这个问题。id是否按时间顺序排列,以便第一个查询的where子句可以移动到子查询中?如果是这样,
SUM(item_qt)
MAX(id)
可以使用相同的子查询找到。@TerjeD。这似乎奏效了。你应该回答这个问题。
SELECT *
FROM table1 t
INNER JOIN
(SELECT MAX(id) AS id, SUM(item_qt) AS sum_item_qt
 FROM table1
 WHERE timestamp >= DATE_SUB(NOW(), INTERVAL 5 MINUTE)
 GROUP BY member_id) AS t2
ON t2.id = t.id
ORDER BY t.id DESC
LIMIT 10