场景如下:我SunflowerSeeds
在 SQL Server 2008 中有一个表。
CREATE TABLE [dbo].[SunflowerSeeds](
[Color] [nvarchar](50) NULL,
[SeedType] [nvarchar](50) NULL,
[Price] float NULL
)
为简单起见,我没有插入一长串数据。
向表中插入数据如下所示:
Insert into [dbo].[SunflowerSeeds] (Color, SeedType, Price)
SELECT 'Yellow', 'Dwarf', 20
UNION ALL
SELECT 'Brown', 'Garden', 30
UNION ALL
SELECT 'Red', 'Garden', 35
现在我得到了各种可以提高种子价格的矩阵。
- Polenless (YES/NO):如果是,将价格提高 10%
- 高度(> 13"):如果是,则将价格提高 8%
- 有机(是/否):如果是,将价格提高 15%
- 生命周期(年度-是/否):如果是,将价格提高 12%
每个数据插入行对上面列出的每个矩阵都可以有 YES 或 NO 值。我需要想出一个过程来根据表Price
中每个种子的返回新价格SunFlowerseeds
并将矩阵组合纳入 a/c。
例如,如果黄矮星是无极的,高度 > 13 英寸,有机是并且具有年度生命周期,那么新价格必须计算为
10% + 8%+15%+12% = 45% = 1+ 0.45= 1.45
那么新的价格是: 1.45 * Original Price= 1.45*20 = 29
对于其余的组合也是如此。
我正在考虑编写一个 SQL Server 存储过程,以便以后可以在我的 C# 代码中调用它。存储过程的 i/p 参数将是Color
和SeedType
。有了这两个参数,我可以得到Price
.
挑战是我如何Price
使用适用矩阵的组合计算每个种子的新值 - Polenless、height、Organic、LifeCycle。谁能指出我正确的做法。请帮助我。TIA。