SQL,判断一个表中的字段是否存在于另一个表中,如何写

SQL,判断一个表中的字段是否存在于另一个表中,如何写没学过SQL,请详细说明... SQL,判断一个表中的字段是否存在于另一个表中,如何写
没学过SQL,请详细说明
展开
 我来答
达竹雨嘉之
游戏玩家

2019-12-19 · 游戏我都懂点儿,问我就对了
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:980万
展开全部
楼主说的是更新吧,楼上说的是sql
server的语法,不知道楼主是什么数据库,如果是oracle的话
建议这么写:
update
a
set
col=(select
col
from
b
where
a.id=b.id)
exists(select
1
from
b
where
a.id=b.id

注意:两个表的id
一定要一一对应,不让会报错:查询单个值返回多条记录。
百度网友ecc263c
2010-05-19 · TA获得超过624个赞
知道小有建树答主
回答量:478
采纳率:100%
帮助的人:372万
展开全部
假设你说的字段名称相同就算存在的话
select name from syscolumns where id=(select id from sysobjects where name='表名A')
and name in (select name from syscolumns where id=(select id from sysobjects where name='表名B'))
如果有,查询显示相同字段名
如果没有,查询显示无
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
骑梼杌的小哪吒
推荐于2016-02-04 · TA获得超过625个赞
知道小有建树答主
回答量:385
采纳率:100%
帮助的人:150万
展开全部
你是说的字段名还是字段的具体值?
字段名:
if (NOT exists ( select * from dbo.syscolumns where name = '字段名' and id in
(select id from dbo.sysobjects where id = object_id(N'[dbo].表名') and OBJECTPROPERTY(id, N'IsUserTable') = 1))
)
字段的具体值:
一楼的就可以,但是你必须知道要比较的两列的列名才可以
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华夏、葬爱
2010-05-19 · TA获得超过570个赞
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:83.8万
展开全部
if exists (select *from A where 字段 in(select 字段 from B))
print("存在")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光上的桥
2010-05-19 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21424 获赞数:65786
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
SELECT * FROM 表A WHERE 字段A IN (SELECT 字段B FROM 表B)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式