tsql - 检查用户名是否出现在表中
问题描述
所以我有 2 个表 1 个表 User 与列 Username(nvarchar) 和 Active(boolean) 以及第二个表 UserCompany 与列 Username(nvarchar) 列。
我想让表 2 中不存在的表 1 中的所有用户处于非活动状态。
有没有办法对所有用户进行某种 foreach,如果结果为 NULL,则可以将用户设置为非活动状态?在网上搜索但找不到它。
解决方案
您可以在update
. 它看起来像这样:
update users u
set active = 0
where not exists (select 1 from usercompany uc where uc.username = u.username);
如果您想随着时间的推移保持insert
这种状态,您将需要、update
和delete
触发器 on usercompany
。
推荐阅读
- java - 如何在 JAVA/XML 中使用没有“valueFrom”的 objectAnimator?
- python - AttributeError:“功能”对象没有属性。不能调用另一个函数的属性
- node.js - 带有 Stripe webhook 的 Cloudflare 返回 HTTP 301 错误
- c++ - 犰狳矩阵向量乘法误差
- c++ - 处理 'std::size_t' 类型的可变参数函数参数
- swiftui - UIViewControllerRepresentable 中的 AVPlayerViewController 以适应容器 ZStack?
- react-native - 已解决如何通过导航在 React Native 中设置全屏背景图像
- ethereum - 从 bigNumber 中提取纯整数
- python - Prefix_to_Postfix:乘法没有出现在正确的位置
- python - 如何让我的机器人等待响应?