sql语句 如何判断A表中的a列数据是否在B表中的b列中存在

如题 A表中有a列 假设数据为1,2,3
B表中有b列 假设数据为2,3,4
现在需要判断a列中的数据在b列中存在

select A.a from A,B where A.a=B.b 最简单的判断。
用IN的话可能出错:select a from A where a IN(select b from B)
用exists如楼上所说~
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-04-21
--存在
select *
from A
where exists(select 1 from B where A.a = B.b)

--不存在
select *
from A
where not exists(select 1 from B where A.a = B.b)本回答被提问者和网友采纳
第2个回答  2009-06-03
SELECT a from A
WHERE a in (select b from B)
第3个回答  2009-06-03
用in语法

sql语句 如何判断A表中的a列数据是否在B表中的b列中存在
用exists如楼上所说~

SQL中如何查询A表中的数据有部分存在B表中并显示出来
SQL中查询A表中的数据有部分存在B表中并显示出来,可以参考下面几种方法:1、select * from B表 where item_no in (select 条码 from A表)2、select * from A表,B表 where A表.条码=B表.item_no

sql中,查找A表中某字段在B表中某字段中包含的记录,该怎么写
要么你数据库设计有问题。这没法一起查,查出来的都是2表堆在一起的,实在要查的话这样 select a.*,b.* from a,b where a.it=b.code and b.code='S'

...b表b1字段数据和c表中c1字段数据)中的sql语句怎么写
1.select from a where a1 not in (select b1 from b)and a1 not in (select c1 from c)2.select from a where a1 not in (select b1 from b union all select c1 from c)3.select from a left outer join b on b.b1=a.a1 left outer join c on c.c1=a.a1 where b1 is...

sql查询一个表里的数据在另一个表是否存在
insert into tableA select * from tableB b where not exists(select 1 from tableA a where a.id = b.id)insert into tableA select * from tableB b left join tableA a on a.id = b.id where a.id is null ---用 not exists来判断,left join ,其中条件为唯一性主键 ...

sql中如何判断某个表中的一个字段的值是不是在另一个表中的某个字段的...
charindex Sql 内置函数,用法如下:select top 5 substring(ContactName,charindex(' ',ContactName)+1,len(ContactName)) as [Last Name] from customers CHARINDEX函数找到First Name和Last Name之间的空格,所以SUBSTRING函数可以分开ContactName列,这样就只有Last Name被选出。在CHARINDEX函数返回的整...

sql查询。查询表A的a列值中具有和表B中b列(用字符串存储的字段,字符串...
建议使用replace函数。具体方法为:将B表备份,暂记为BB表吧,然后对B表的b列进行逗号字符替换处理,继而再对A表和BB表关联查询。所用到的语句及步骤为:1.create table BB as select b from B ;2.update BB set b=replace(b,',','');3.select A.* from A,BB where A.a=BB.b ...

如何判断表格的数据是否包含在另一个表格中?
首先,如果两个表格都存储在数据库中,可以使用SQL查询来进行比较。例如,假设我们有两个表A和B,想要检查表A的数据是否完全包含在表B中,可以使用“INNER JOIN”或“NOT EXISTS”等SQL语句。通过INNER JOIN,我们可以找出两个表中都有的记录;而使用NOT EXISTS,则可以找出在表A...

用oracle如何查询出一个表中的一个字段内容包含另一个表中的某个字段...
描述再详细些,这两个表的字段是否以知,确定,如果能确定是哪连个字段可用如下SQL select from table1 where exists (select 1 from table2 where table1.columA like '%' || table2.columB || '%')如果不确定想要所有匹配,那就写存储过程吧 ...

sql 如何查询表的某一列是否包含另外一个表的某列值
原表B:1)实现一对一:SQL:SELECT DISTINCT CUSTOMER,REGEXP_SUBSTR(SHANGPIN, '[^,]+', 1, LEVEL) AS SHANGPIN FROM CUSTOMERS CONNECT BY LEVEL <= LENGTH(SHANGPIN) - LENGTH(REGEXP_REPLACE(SHANGPIN, ',', ''))+1 2)最终效果实现:SQL:SELECT A.SHANGPIN 产品,COUNT(A.CUSTOMER) ...

相似回答