关于一个联合查询的问题!
我有一个SQL表,记录的是员工的基本信息,另一个是工资表,工资在未发之前我们假设这个工资表是空的。还有一个表是工资项目表。
那么我要保存当月发工资的记录,我用一个DBGrid(或者CxGrid)来显示出员工姓名,工资项目,实发的金额这三个信息。那么DBGrid显示的模式应该如下:
员工姓名 工资项目 实发金额
张三 基本工资 1000.00
张三 岗位津贴 500.00
张三 差旅费 48.50
李四 基本工资 800.00
李四 岗位津贴 400.00
李四 差旅费 0.0
…… …… ……
很显然,这个DBGrid关联的表应该是工资表的那个数据源。但是由于工资在未发之前(也就是我没有输入实发金额前),我们认为这个工资表是空的。那么DBgrid自然显示不出来任何记录。而且,员工姓名和工资项目分别来自员工表和工资项目表。
我想要的结果就是:程序在运行时,DBGrid(或CxGrid)就要显示所有员工姓名以及工资项目,金额那一栏空着待填。因为我想等金额输入完后,我只需执行数据集的ApplyUpdate(0);过程就可以将这个工资发放记录保存到工资表中去。
希望高手指教一下!
------解决方案--------------------放心,马上有人会回复的,哈哈~~~~
------解决方案----------------------先這麼查詢得到你要的表
Select
A.员工姓名,
B.工资项目,
0 As 实发金额
From
员工 A
Cross Join
工资项目表 B
用戶輸入數據後,你再將數據插入到工资表中。
------解决方案--------------------delphi没用过.
如果不想通过查询得到表,再在表里修改的话,恐怕SQL做不到.
我的异常网推荐解决方案:软件开发者薪资,http://www.aiyiweb.com/other/1391128.html