如何将一个表的行与SQL中另一个表的行划分?

时间:2012-01-30 18:14:07

标签: sql tsql math division

如果我有两个整数值表,如:

Table:Distance
1
2
3
4
5

Table:Time
2
4
6
8
10

如何划分表格:表格距离:实现时间

Result:
0.5
0.5
0.5
0.5
0.5

3 个答案:

答案 0 :(得分:6)

假设时间和距离有某种关系。

select Distance.value / CAST(Time.value As float)
from Distance 
join Time on Distance.ID = Time.ID

如果floatTime.valueDistance.value,则需要转化为integer才能将结果作为float。 如果表格之间没有任何关系,您应该create one

答案 1 :(得分:3)

表之间需要一个共同的列,以便知道一个表中的哪些行与另一个表中的行匹配。假设你为两个表添加了一个id列,所以你有

表格距离:

id     distance
1         1
2         2
3         3
4         4
5         5

表格时间:

id     time
1       2
2       4
3       6
4       8
5       10

然后你可以做这样的事情

SELECT (Distance.distance/CAST(Time.time As Float)) As Result
FROM Distance INNER JOIN time ON Distance.id = Time.id

答案 2 :(得分:0)

如果时间和距离之间存在1-1关系,并且您可以重新定义表格结构,那么最好在同一个表格中定义时间和距离。