1

我在 mysql 数据库中有两个表。macs 和 deviceinventory 我想更新 macs 表列名 deviceid =1 但更新那些在 deviceinventory 表列设备 ID 中找不到的记录我使用此查询但它给出错误

UPDATE macs SET deviceid = 1 
WHERE deviceid = (SELECT deviceid FROM macs NOT IN (
                     SELECT * FROM deviceinventory.`deviceid`
                 )) ;
4

2 回答 2

2
UPDATE macs 
SET deviceid = 1 
WHERE deviceid IN (
  SELECT deviceid 
  FROM macs 
  WHERE deviceid NOT IN (
      SELECT deviceid 
      FROM deviceinventory
  )
 ) ;
于 2013-01-29T10:08:13.197 回答
-1

试试这个:

UPDATE 
   macs 
SET 
   deviceid = 1 
WHERE 
   deviceid NOT IN 
     (SELECT deviceid FROM deviceinventory);
于 2013-01-29T10:08:24.583 回答