access select 查询语句
假设有下面这样一个表列1列2列31/1A0.11/1B0.11/1C0.11/2A0.11/2B0.11/3A0.11/3C0.11/4B0.11/4C0.1现在如何通过...
假设有下面这样一个表
列1 列2 列3
1/1 A 0.1
1/1 B 0.1
1/1 C 0.1
1/2 A 0.1
1/2 B 0.1
1/3 A 0.1
1/3 C 0.1
1/4 B 0.1
1/4 C 0.1
现在如何通过ACCESS查询到如下结果(请注意是access,不是sql)
列1 列2 列3
1/1 A 0.1
1/1 B 0.1
1/1 C 0.1
1/2 A 0.1
1/2 B 0.1
1/2 C -
1/3 A 0.1
1/3 B -
1/3 C 0.1
1/4 A -
1/4 B 0.1
1/4 C 0.1
说明:以1/1~1/4日期为查询条件(具体使用时日期未定)
若当日不存在数据则以“-”代替。
如:1/2 C是没有数据的,所以就输出“1/2 C -” 展开
列1 列2 列3
1/1 A 0.1
1/1 B 0.1
1/1 C 0.1
1/2 A 0.1
1/2 B 0.1
1/3 A 0.1
1/3 C 0.1
1/4 B 0.1
1/4 C 0.1
现在如何通过ACCESS查询到如下结果(请注意是access,不是sql)
列1 列2 列3
1/1 A 0.1
1/1 B 0.1
1/1 C 0.1
1/2 A 0.1
1/2 B 0.1
1/2 C -
1/3 A 0.1
1/3 B -
1/3 C 0.1
1/4 A -
1/4 B 0.1
1/4 C 0.1
说明:以1/1~1/4日期为查询条件(具体使用时日期未定)
若当日不存在数据则以“-”代替。
如:1/2 C是没有数据的,所以就输出“1/2 C -” 展开
1个回答
展开全部
不写sql,根本就运行不出来
以下三个字段都是短文本类型,你要是设置其他类型直接运行可能报错
sql语句:
select t1.列1,t1.列2,switch(t1.列1=t2.列1 and t1.列2=t2.列2,t2.列3,true,'-') as 列3 from
(select a.列1,b.列2
from
(select a.列1,b.列2 from
(select distinct 列1 from test) as a,
(select distinct 列2 from test) as b)) t1 left join test as t2 on t1.列1=t2.列1 and t1.列2=t2.列2
order by t1.列1,t1.列2
结果:
追问
太感谢了,解决大问题了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询