MySQL从许多查询变成一个查询?

时间:2018-12-24 09:26:27

标签: mysql

我有很多查询,并且想将它们组合成一个查询,导致其加载时间很长:/

首先,我选择open = 0限制为1的项目,并在第二个查询中将其更新为open = 1。

然后我从第3个查询中的trade_id中选择案例数和所有未清1的item_price的总和。

在第4次中,我不仅从open = 1获得了所有交易的计数,而且从最后一个查询中我选择了*,其中open = 1并且trade_id = trade_id由item_price DESC排序了

要查询的很多,我希望将它们合并为一个查询。

但是有SELECT个查询,并且还可以一次更新查询吗?那行吗?

这是我的疑问:

查询1:

SELECT * 
FROM cases 
WHERE opened = 0 
  AND trade_id = ' + pool.escape(tradeid) + ' 
ORDER BY caseid 
LIMIT 1

查询2:

UPDATE cases 
SET opened = 1, openedtime = ' +time() + ' 
WHERE case_id = ' + pool.escape(row[0].case_id)

查询3:

SELECT 
    COUNT(*) AS cases, SUM(`item_price`) AS preturile 
FROM 
    cases 
WHERE 
    opened = 1 
    AND trade_id = ' + pool.escape(tradeid)

查询4:

SELECT 
    COUNT(*) AS casessum 
FROM 
    cases 
WHERE 
    trade_id = ' + pool.escape(tradeid)

查询5:

SELECT * 
FROM cases 
WHERE opened = 1 
  AND trade_id = ' + pool.escape(tradeid) + ' 
ORDER BY item_price DESC

如果有人可以帮助我将这些查询构建为一个查询,那就太好了。 我搜索了很多东西,但没有找到这么多查询:/

0 个答案:

没有答案