这句复杂的SQL语句该怎么写?请SQL 高手帮我写一下

ningkang 2002-05-05 10:07:22
这句复杂的SQL语句该怎么写?请SQL 高手帮我写一下
共有四个表:其字段大致如下:
流水帐 ([人员编号],[代码],[名称],[规格],[单位],[单价],[数量],[分类],[实交金额],[应交金额])
档案库 ([人员编号],[姓名],[总费用],[标志])
费用名称 ([代码],[名称],[规格],[单位],[单价],[数量],[分类],[日收取],[月收取])
房间 ([人员编号],[房间名],[床位号],[日费用(bit字段)])

将“费用名称”表中“所有[日收取]=1(这是一个bit字段)”的记录,插入到“流水帐”表中,
流水帐 ([人员编号]=档案库.人员编号,[代码]=费用名称.[代码],[名称]=费用名称.[名称],[规格]=费用名称.[规格],[单位]=费用名称.[单位],[单价]=费用名称.[单价],[数量]=费用名称.[数量],[分类]=费用名称.[分类],[实交金额]=(费用名称.[单价] * 费用名称.[数量]),[应交金额]=(费用名称.[单价] * 费用名称.[数量])
条件是: 档案库.人员编号=房间.人员编号" _
& " where 档案库.标志=1 and 房间.[日费用]=1 and 费用名称.[日收取] = 1"
绕来绕去,一会就迷糊!我胡写了一个肯定不对,请SQL 高手帮我改一下

sql$ = "insert into 流水帐 ([人员编号],[代码],[名称],[规格],[单位],[单价],[数量],[分类],[应交金额]) " _
& " select 档案库.[人员编号],[代码]=费用名称.[代码],[名称]=费用名称.[名称],[规格]=费用名称.[规格],[单位]=费用名称.[单位],[单价]=费用名称.[单价],[数量]=费用名称.[数量]," _
& "[分类]=费用名称.[分类],[实交金额]=(费用名称.[单价] * 费用名称.[数量]),[应交金额]=(费用名称.[单价] * 费用名称.[数量])" _
& " from 档案库,费用名称 left join 房间 on 档案库.人员编号=房间.人员编号" _
& " where 档案库.标志=1 and 房间.[日费用]=1 and 费用名称.[日收取] = 1"

conn.Execute sql$
...全文
67 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
karma 2002-05-06
  • 打赏
  • 举报
回复
建议你用存储过程
yclyz 2002-05-05
  • 打赏
  • 举报
回复
先到ACCESS里去实现查询,这样直观点,否则像我等菜鸟真会转晕了头

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧