首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL UPDATE、SELECT CASE with Division和INNER

SQL UPDATE、SELECT CASE with Division和INNER
EN

Stack Overflow用户
提问于 2018-12-14 20:56:32
回答 3查看 129关注 0票数 0

我尝试了很多方法来做,但没有任何一个,我需要更新数量,只有当在t2中的除法在t1.total和t1之间的数量在t2中是update

我的代码:

代码语言:javascript
复制
UPDATE t1
SET t1.Code_142 = 'OK' 
SELECT CASE WHEN quantity = 0 THEN NULL ELSE TOTAL/quantity END AS q
FROM Servicios_de_control_de_calidad_de_agua_potable as t1
INNER JOIN Con_A as t2 ON t1.ID = t2.ID
WHERE t1.q BETWEEN t2.Mins AND t2.Maxs

问候

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-12-14 21:10:35

您要查找的查询应如下所示

代码语言:javascript
复制
UPDATE t1
SET t1.Code_142 = 'OK' 
FROM Servicios_de_control_de_calidad_de_agua_potable  t1
INNER JOIN Con_A  t2 ON t1.ID = t2.ID
WHERE CASE WHEN quantity = 0 THEN t2.Mins-1 ELSE TOTAL/quantity END BETWEEN t2.Mins AND t2.Maxs
票数 1
EN

Stack Overflow用户

发布于 2018-12-14 21:09:17

您可以按照下面的步骤进行尝试,希望能对您有所帮助

代码语言:javascript
复制
UPDATE t1
SET t1.Code_142 = 'OK' 
FROM Servicios_de_control_de_calidad_de_agua_potable as t1
INNER JOIN Con_A as t2 ON t1.ID = t2.ID
WHERE (CASE WHEN quantity = 0 THEN NULL ELSE TOTAL/quantity END) BETWEEN t2.Mins AND t2.Maxs
票数 3
EN

Stack Overflow用户

发布于 2018-12-14 21:30:03

显然,我无法测试这段代码,但您可能需要以下代码:

代码语言:javascript
复制
UPDATE t1
SET t1.Code_142 = 'OK',
    q = CASE WHEN quantity = 0 THEN NULL ELSE TOTAL/quantity END 
FROM Servicios_de_control_de_calidad_de_agua_potable as t1
INNER JOIN Con_A as t2 ON t1.ID = t2.ID
WHERE t1.q BETWEEN t2.Mins AND t2.Maxs
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53780251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档