sql - 合并来自不同表的两个不同字段的 MS Access SQL 查询显示参考 ID 而不是实际值
问题描述
我的 access 数据库中有两个单独的表,它们都使用第三个表作为每个表上一个特定字段的参考。数据通过不同的表格输入到不同的表格中。然后我有几个查询,然后引用那些计算和显示唯一值的特定字段。这些查询显示实际值,然后我创建了一个执行相同操作的 sql 查询,只是它显示参考 ID 而不是实际字段中的值。
table ODI---------table CDN----------reference table
id RHA---------id CHA----------- -----id HA
1 空白---------1 收音机---------------1 互联网
2 互联网--------2 电视- -----------------2 广播
3 推荐-------3 广播---------------3 推荐
4 电视- ------------4 空白---------------4 回头客
5 空白---------5 互联网---- --------5 电视
6 互联网-------6 推荐------------6 员工
7 推荐--------7 推荐---- --------7 社交媒体
这是我试图使工作的代码。
SELECT m.[Marketing Results], Count(*) AS [Count]
FROM (SELECT RHA as [Marketing Results] FROM ODI
UNION ALL
SELECT CHA as [Marketing Results] FROM CDN) AS m
GROUP BY m.[Marketing Results]
HAVING (((m.[Marketing Results]) Is Not Null))
ORDER BY Count(*) DESC;
我想要的结果是什么,
营销结果--计数
推荐------------------4
互联网-----------------3
广播---- -----------------2
电视-------------------------2
解决方案
具有别名的查找字段不显示表中实际存储的内容。存储的是 ID,而不是描述性别名。查找别名将携带到常规查询中,但联合查询仅提取实际存储的值。在某些时候需要通过加入关键字段来在查询中包含参考表,以便检索描述性别名。选项:
- 在每个 UNION 查询 SELECT 行中,连接表
- 将 UNION 查询连接到引用表
- 将聚合查询连接到引用表
大多数有经验的开发人员不会在表中构建查找,因为它们会引起混乱。此外,它们不能移植到其他数据库平台。http://access.mvps.org/Access/lookupfields.htm
推荐阅读
- reporting-services - 无法在 Visual Studio 2017 中添加 Crystal Report
- git - Git:如何确保我不会将哈希提交/推送到尚未推送到远程的子模块?
- spring - Ehcache - 用于 removeAll 操作的磁盘持久缓存的 java.io.EOFException
- conv-neural-network - 单个cnn如何预测YOLO中的bounding box坐标、objectness score和概率?
- css - 如何增加输入文件元素的面积?
- python-2.7 - 当文本输入专注于 Kivy Python 时如何显示虚拟键盘
- typescript - 如何将 VueLoaderPlugin 导入 TypeScript 文件?
- mongodb - GCP 上的 MongoDB Atlas:有没有办法限制 MongoDB Atlas 只接受来自我项目中运行的 Compute 实例的连接请求
- node.js - 在 sudo 用户中使用 nvm 安装节点
- ubuntu - 使用 Gstreamer 与 Protobuf 版本冲突