Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共10 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:SQL问题合并

1楼
lin98 发表于:2024/7/12 8:57:00

SQ-L,如何用SQ-L实现将表1

4的字段:编号,数量

1的字段:编号,数量

2的字段:编号,数量

3的字段:编号,数量

[此贴子已经被作者于2024/7/12 10:04:50编辑过]
2楼
有点蓝 发表于:2024/7/12 9:25:00
下面是sqlserver的用法,不同数据库,可能语法有差异,自行网上搜索

select a.编号,a.数量 as 数量1,b.数量 as 数量2,c.数量 as 数量3 from 表1 as a inner join 表2 as b on a.编号=b.编号 inner join 表3 as c on a.编号=c.编号
3楼
lin98 发表于:2024/7/15 9:14:00

INSERT INTO  表4(编号,日期,数量1, 数量2, 数量3)
SELEC-T 
a.编号 as 编号,
a.日期 as 日期,
    a.数量 as 数量1,
    NULL as 数量2, 
    NULL as 数量3   
FROM   表1   as a
UNION ALL
SELEC-T 
b.编号 as 编号,
b.日期 as 日期,
    NULL as 数量1,
    b.数量 as 数量2,
    NULL as 数量3
FROM  表2    as b
UNION ALL
SELEC-T 
c.编号 as 编号,
c.日期 as 日期,
    NULL as 数量1,
    NULL as 数量2,
    c.数量 as 数量3
FROM   表3    as   c;
问题二:在ADO中,上面代码看一个整个?还是要分写?

Dim db = HySq-l.DataBaseFactory.CreateDatabase("myQ") '
Dim Sq-l = 上面代码
[此贴子已经被作者于2024/7/15 11:54:47编辑过]
4楼
有点蓝 发表于:2024/7/15 9:31:00
使用inner join,看2楼用法
5楼
lin98 发表于:2024/7/15 10:16:00
2楼不行,因为三表的数据量不同,内连接,只在查询同存数据,不存在则过滤,达不到需求。
需求是三表合并,是将三表的所有数据合并到表4.如何实现?
6楼
有点蓝 发表于:2024/7/15 10:27:00
试试

select a.编号,b.数量 as 数量1,c.数量 as 数量2,d.数量 as 数量3 from (select distinct 编号,日期 from (selec编号,日期 from 表1 union all selec编号,日期 from 表2 union all selec编号,日期 from 表3) as a) as a left join 表1 as b on a.编号=b.编号 left join 表2 as c on a.编号=c.编号 left join 表3 as d on a.编号=d.编号

7楼
lin98 发表于:2024/7/15 10:38:00
出现空值
[此贴子已经被作者于2024/7/15 11:55:21编辑过]
8楼
有点蓝 发表于:2024/7/15 10:42:00
加上日期

…… as a left join 表1 as b on a.编号=b.编号 and a.日期=b.日期  left join 表2 as c on a.编号=c.编号  and a.日期=c.日期 ……
9楼
lin98 发表于:2024/7/15 10:56:00
[图一
[此贴子已经被作者于2024/7/15 11:54:19编辑过]
10楼
有点蓝 发表于:2024/7/15 10:59:00
几个表数据导出发过来测试一下
共10 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .04297 s, 2 queries.