假设我有一张汽车表。 我有品牌专栏和专栏模型。 标记可以重复。 而我所做的是一个查询,向我显示一列中的标记,模型中的另一列,以及另一列为每个汽车品牌生成一个数字,该数字必须向上移动。 在以下示例中,显示了我的查询结果应该如何。
Brand Model Brand Number
--------------- ----------------------- ---------------------
Ford Ranger 1
Ford F100 1
Ford Explorer 1
Chevrolet Silverado 2
Chevrolet LUV 2
Mitsubishi L200 3
Toyota Hilux 4
有人可以告诉我如何为查询中的每个标记生成该数字吗?
答案 0 :(得分:0)
如果Model
和Make
之间存在多对一关系,则它们应位于不同的表格中。像这样:
ID | Name
---------
1 | Ford
2 | Chevrolet
3 | Mitsubishi
4 | Toyota
ID | MakeID | Name
-------------------
1 | 1 | Ranger
2 | 1 | F100
3 | 1 | Explorer
4 | 2 | Silverado
5 | 2 | LUV
6 | 3 | L200
7 | 4 | Hilux
然后你的查询将是一个简单的SELECT
语句,它连接两个表:
SELECT
Make.Name AS Brand,
Model.Name AS Model,
Make.ID AS Number
FROM
Make
INNER JOIN Model
ON Make.ID = Model.MakeID