有三个表,一个是人员信息号(人员编号是主关键字),一个是组信息表(组编号是主关键字),一个是前两个表的连接关系表名字叫设置表(有两个字段分别是前两个表的主关键字)。意思就是哪些人在哪个组里。
我在做程序时,界面有三个DBGRIDEH控件,一个是显示组信息的假设叫表1,另两个一个是显示未分组人员信息的假设叫表2,另一个是显示当前组中的人员信息的假设叫表3。用户可以在表2中选择多个人员,然后点击加入到该组,这样这些人就会分到表1中所选的组里去,此时表3中会增加这些人,而表2中会减少这些人。我使用三个ADOQUERY控件对应这三个DBGRIDEH控件,表2和表3的ADOQUERY控件的SQL语句不知道该怎么写,才能使表2只列出未分组的,表3显示当前组成员。
我在做程序时,界面有三个DBGRIDEH控件,一个是显示组信息的假设叫表1,另两个一个是显示未分组人员信息的假设叫表2,另一个是显示当前组中的人员信息的假设叫表3。用户可以在表2中选择多个人员,然后点击加入到该组,这样这些人就会分到表1中所选的组里去,此时表3中会增加这些人,而表2中会减少这些人。我使用三个ADOQUERY控件对应这三个DBGRIDEH控件,表2和表3的ADOQUERY控件的SQL语句不知道该怎么写,才能使表2只列出未分组的,表3显示当前组成员。
解决方案 »
- 为什么我不能自定义函数
- 录入界面继承后,动态创建ADOQuery,DataSource,做不出来.~~
- 现在不做技术了要做销售。还得请教各位,看看大家有什么好的看法? 散分
- 郁闷,ADODATASET用法,各路大侠指教 :(
- 我使用FastReport 2.47,在属性设置里设置字体属性,出现什么“……服务器不可用”的提示,怎么回事?
- 请问一个关于连接数据库的问题
- 球迷朋友请进来
- 请教如何操作Tbitmap,以及ScanLine的使用,目的:在Bitmap中如何描点?
- 如何对预览报表的纸张进行控制
- 随便看了看csdn的首页上的招聘,结果要求不是vc,就是vb,再么c,怎么就看不到delphi?!哎……有些灰心!
- 有人用过EHlib下面的MemTableEh 说一下具体的连接的方法 ?
- ***delphi 2006 以上版本的运行环境要求*****
select * from 人员信息表 where 人员信息号 not in (select 人员信息号 from 设置表)
表3:
select * from 人员信息表 as a join 设置表 as b on a.人员信息号=b.人员信息号 where b.组编号=当前组号
select * from 人员信息表 where 人员信息号 not in (select 人员信息号 from 设置表)
表3:
select * from 人员信息表 as a join 设置表 as b on a.人员信息号=b.人员信息号 where b.组编号=当前组号
個人感覺第三個表沒必要嘛
第一個表上面加個組編號不就得了。
select * from 人员信息表 where 人员信息号 not in (select 人员信息号 from 设置表)
表3:
select * from 人员信息表 as a join 设置表 as b on a.人员信息号=b.人员信息号 where b.组编号=当前组号
select * from 人员信息表 as a innor join 设置表 as b on a.人员信息号=b.人员信息号 where b.组编号=当前组号