您好我正在尝试创建SQL查询,我将1行的值乘以其下方行中的值。我该怎么做?将两列相乘很容易,但我似乎停留在乘以2行。
答案 0 :(得分:3)
这取决于你的情况。
简单地说......如果你的桌子看起来像这样......
CREATE TABLE `test` (
`number` BIGINT(20) NOT NULL,
PRIMARY KEY (`number`)
) ENGINE=INNODB DEFAULT CHARSET=latin1
......和其中的一些数据一样......
number
------
2
3
4
......你可以这样做:
SELECT
(SELECT number
FROM test
WHERE number = 2) *
(SELECT number
FROM test
WHERE number = 3) AS "product"
FROM test
LIMIT 1;
你可能还要把JOIN
表放在自己身上。
答案 1 :(得分:1)
加入同一张桌子
select t1.val*t2.val from tab t1, tab t2 where t1.id=5 and t2.id=6
或
select t1.val*t2.val from tab t1, tab t2 where t1.id=5 and t2.id=t1.id+1