近期遇到一个问题,很神奇,不知道原因,如下图
去掉where b.MANDT = '800' 时
t1.COMP = 999是显示的
加上where b.MANDT = '800' 时
t1.COMP = 999就没了
但是t2.MANDT就是800,不应该影响结果集
望专家解惑!
近期遇到一个问题,很神奇,不知道原因,如下图
去掉where b.MANDT = '800' 时
t1.COMP = 999是显示的
加上where b.MANDT = '800' 时
t1.COMP = 999就没了
但是t2.MANDT就是800,不应该影响结果集
望专家解惑!
以下回复引自免费微信小程序:皆我百晓生。 如问题解决,还请采纳。如仍有疑问,请回复留言或私信博主,以便获得更精准的帮助。
假设你有一个表结构如下:
CREATE TABLE T1 (
COMP INT,
MANDT VARCHAR(255)
);
如果你想要在SQL中筛选出满足“MANDT = '800'" 的所有记录,你可以使用以下SQL语句:
SELECT * FROM T1 WHERE MANDT = '800';
这个查询会返回包含所有符合条件的数据的行,因为WHERE
子句过滤了匹配指定值的所有列。
如果要根据条件 B.MANDT = '800' AND T1.COMP = 999
来获取相同数据,你可以这样做:
SELECT * FROM T1 WHERE MANDT = '800' AND T1.COMP = 999;
这个查询会返回包含所有符合条件的数据的行,因为它同时检查了 B.MANDT
和 T1.COMP
是否都等于 800
。
注意:这些表达式中的逗号和空格需要被替换为实际的值。