2016-02-28 41 views
-1

我正在制作一个c#桌面应用程序来计算员工的总工资并生成报表。对两列表执行操作以获得第三个值

CREATE TABLE [dbo].[emplyees] (
    [id]   INT   NOT NULL, 
    [Name]   VARCHAR (50) NULL, 
    [State]  VARCHAR (50) NULL, 
    [Salary]  FLOAT (53) NULL, 
    [Tax]   FLOAT (53) NULL, 
    [Total_Salary] FLOAT (53) NULL 
); 

系统应该计算total_salary是[salary] - [tax]。 如何计算total_salary 使用Visual Studio 2013,SQL Server Express的2012和SQL管理工作室2012年

+3

好吧,祝你好运。你有问题吗?我没有看到一个。顺便说一句,不要使用浮动,使用数字或货币数据类型。 –

+0

你已经试过了什么?你能创建一个SQL查询吗?如果不是,那么这就是你的问题应该关注的问题,而不是关于VS,SQL express和C#,但考虑到这些问题已经被提出并回答了一百万次,所以你实际上甚至不需要问新问题。 –

+0

您应该使用['MONEY'](https://msdn.microsoft.com/en-us/library/ms179882.aspx)类型或['DECIMAL'](https:// msdn。 microsoft.com/en-us/library/ms187746.aspx)类型。它们提供具有固定精度和规模的确切数字。 'FLOAT'没有。 –

回答

1

为什么不选择在SQL语句中的总和:

SELECT id, 
     Name, 
     State, 
     Salary, 
     Tax, 
     Salary - Tax AS Total_Salary 
FROM employees 

无需实际将其存储在桌子。这是多余的信息。

+0

Thankyou。有效 –

1

可以使用计算列

CREATE TABLE [dbo].[emplyees] (
[id]   INT   NOT NULL, 
[Name]   VARCHAR (50) NULL, 
[State]  VARCHAR (50) NULL, 
[Salary]  FLOAT (53) NULL, 
[Tax]   FLOAT (53) NULL, 
[Total_Salary] AS [Salary]-[Tax] 
); 
相关问题