可以这样写吗update PRODUCT set (DTYPE,DTYPE1)=(select MPART.DTYPE,MPART.DTYPE1 from mpart where MPART.DEL = 0 and MPART.WKAID <> '3' and TO_NUMBER(SUBSTR(MPART.NO, 1, 2)) < 16 and MPART.NO = PRODUCT.NO) where PRODUCT.DEL = 0 and WKAID <> '3' and DTYPE is null;
时间: 2024-02-14 18:28:12 浏览: 76
是的,你可以像你提供的SQL语句一样进行更新。以下是你提供的SQL语句,稍作调整后的正确写法:
```sql
UPDATE PRODUCT
SET (DTYPE, DTYPE1) = (
SELECT MPART.DTYPE, MPART.DTYPE1
FROM MPART
WHERE MPART.DEL = 0
AND MPART.WKAID <> '3'
AND TO_NUMBER(SUBSTR(MPART.NO, 1, 2)) < 16
AND MPART.NO = PRODUCT.NO
)
WHERE PRODUCT.DEL = 0
AND WKAID <> '3'
AND DTYPE IS NULL;
```
这个更新语句将根据MPART表中满足特定条件的记录来更新PRODUCT表中的DTYPE和DTYPE1字段。请确保在执行更新操作之前进行备份,并在生产环境中谨慎使用更新语句。
相关问题
oracle更新表product的字段DTYPE和DTYPE1,等于MPART表的no相同的数据的DTYPE和DTYPE1
你可以使用以下的SQL语句来更新表product的字段DTYPE和DTYPE1,使其等于MPART表中相同no的数据的DTYPE和DTYPE1:
```sql
UPDATE product
SET DTYPE = (SELECT MPART.DTYPE FROM MPART WHERE product.no = MPART.no),
DTYPE1 = (SELECT MPART.DTYPE1 FROM MPART WHERE product.no = MPART.no)
WHERE EXISTS (SELECT 1 FROM MPART WHERE product.no = MPART.no);
```
请注意,这个更新语句假设表product和MPART之间存在一个关联字段no来匹配相同的数据。如果在这两个表之间有其他关联字段,请相应地进行修改。此外,确保在执行更新操作之前进行备份,并且在生产环境中谨慎使用更新语句。
bin_img = np.zeros(shape=timg.shape, dtype=np.uint8)
这段代码的作用是创建一个与`timg`具有相同形状和数据类型的全零数组`bin_img`。`shape`参数指定了数组的形状,`dtype`参数指定了数组元素的数据类型。在这里,`np.uint8`表示无符号8位整数,即像素值范围在0到255之间。通常,这个数组会被用来存储二值化后的图像,其中像素值为0或255。
阅读全文