首页 > 解决方案 > 加入 2 个表 VB.NET

问题描述

我得到了这个代码:

strSQL += " ,allow_grp_desc as PayAlwGroup, deduct_grp_desc as PayDedGroup, unit_rate_grp_desc as PayUnitRateGroup, Ot_grp_name as OTGrpName

这将分别生成具有不同列的报告。所有列字段都在同一个表(员工表)中。所以我想在报告中添加新的列名“is_prorate”,但它属于名为“employee_salary”的不同表。有人可以建议我如何插入编码,因为我已经尝试了很多解决方案但它不起作用。

例子:

strSQL += " SELECT CASE is_basic_prorate WHEN '1' THEN 'Y' ELSE 'N' as BasicProrate from employee_salary_setup WHERE Company_id = '" & gstrCompanyId & "' ,"

错误信息:

关键字“INNER”附近的语法不正确。关键字“as”附近的语法不正确。

预期输出:

PayAlwGroup PayDedGroup PayUnitRateGroup    OTGrpName        BasicProrate
STANDARD    STANDARD    STANDARD            NO OVERTIME          Y

标签: sql-servervb.net

解决方案


您可以扩展您的查询,如下所示

strSQL += " SELECT is_prorate, CASE is_basic_prorate WHEN '1' THEN 'Y' ELSE 'N' as BasicProrate from employee_salary_setup inner join employee_salary on employee_salary_setup.EmpId = employee_salary.EmpId  WHERE Company_id = '" & gstrCompanyId & "' ,"

要了解有关在 sql server 中加入的更多信息,您可以学习SQL Server Joins


推荐阅读