SELECT DISTINCT B.FNAME FROM T_BD_Customer A LEFT JOIN T_BD_Customer_L B ON A.FID=B.FID AND A.FNAME = '泸州老窖国际发展(香港)有限公司'为什么结果是空的
时间: 2024-04-21 22:24:48 浏览: 13
这是一个IT类问题。根据您提供的SQL查询语句,查询结果为空可能有以下几个原因:
1. 数据库中没有满足条件的记录:可能是因为表 T_BD_Customer 中没有 FNAME 为 '泸州老窖国际发展(香港)有限公司' 的记录,或者在表 T_BD_Customer_L 中没有与之对应的 FID 和 FNAME 相匹配的记录。
2. 连接条件不满足:LEFT JOIN 语句中的连接条件是 A.FID=B.FID,以及 A.FNAME = '泸州老窖国际发展(香港)有限公司',如果这些条件不满足,则查询结果为空。请检查 A 表和 B 表中的对应字段值是否匹配。
3. 数据类型不匹配:如果连接字段的数据类型不匹配,也可能导致查询结果为空。请确保 A 表和 B 表中连接字段的数据类型相同。
请检查以上几个方面,确认数据和查询条件是否正确,并尝试重新运行查询语句。如果问题仍然存在,请提供更多详细信息,以便我能够更好地帮助您解决问题。
相关问题
SELECT DISTINCT A.BEGIN_REPAIR_NO, A.PART_NO, A.CREATE_BY, B.EMPLOYEE_NAME AS CREATE_NAME, A.CREATE_TIME FROM TPMDATA.PICKING A LEFT JOIN TPMDATA.SAP_EMPLOYEE B ON A.CREATE_BY = B.EMPLOYEE_NO SELECT nvl(sum(A.CURRENT_QUANTITY),0) FROM TPMDATA.PICKING A LEFT JOIN TPMDATA.sys_part B ON A.PART_NO = B.PART_NO 将这俩条sql语句 合成一条
可以使用子查询将这两条 SQL 查询语句合并成一条:
SELECT DISTINCT
A.BEGIN_REPAIR_NO,
A.PART_NO,
A.CREATE_BY,
B.EMPLOYEE_NAME AS CREATE_NAME,
A.CREATE_TIME,
NVL((SELECT SUM(CURRENT_QUANTITY)
FROM TPMDATA.PICKING
LEFT JOIN TPMDATA.sys_part ON TPMDATA.PICKING.PART_NO = TPMDATA.sys_part.PART_NO
WHERE TPMDATA.PICKING.BEGIN_REPAIR_NO = A.BEGIN_REPAIR_NO AND TPMDATA.PICKING.PART_NO = A.PART_NO), 0) AS CURRENT_QUANTITY
FROM
TPMDATA.PICKING A
LEFT JOIN TPMDATA.SAP_EMPLOYEE B ON A.CREATE_BY = B.EMPLOYEE_NO;
这条语句将原本要查询的 SUM(CURRENT_QUANTITY) 作为子查询嵌入到了主查询中,并且增加了 WHERE 子句,以便查询对应的 BEGIN_REPAIR_NO 和 PART_NO。
select distinct(a.group_id) from jags_errorrecord a left join ucenter250.complat_group b on a.group_id = b.iid ;反选这条sql的数据
您可以使用以下 SQL 语句来反选这条 SQL 的数据:
```
SELECT DISTINCT(a.group_id)
FROM jags_errorrecord a
LEFT JOIN ucenter250.complat_group b ON a.group_id = b.iid
WHERE b.iid IS NULL;
```
在原始 SQL 语句的基础上,我们添加了一个 WHERE 子句,使用 IS NULL 来找出没有匹配的记录。具体地,我们在左连接的结果集中找出 b.iid 为 NULL 的记录,这些记录对应的 a.group_id 就是我们需要反选的数据。