我在这里有这个代码:
select wms.product_code, WMS.barcode from(Select id,barcode,
concat('0',barcode,checkdigit) as zc from outerb) as outerb
join wms on outerb.zc = wms.barcode;我需要根据上面的查询选择/查看所有不匹配的值。
这是我已经尝试过的:
SELECT * FROM wms where not exists (select wms.product_code, WMS.barcode
from(Select id,barcode, concat('0',barcode,checkdigit) as zc from outerb) as
outerb
join wms on outerb.zc = wms.barcode);但此查询不会返回任何内容。此外,zc表也是一个临时表。
使用MySql工作台
Table: outerb
Columns:
Id int(11) AI PK
Product_code varchar(255)
Brand varchar(255)
Product_desc varchar(255)
Size varchar(255)
Barcode varchar(255)
checkdigit varchar(255)
Table: wms
Columns:
Id int(11) AI PK
Product_code varchar(255)
Barcode varchar(255)发布于 2019-03-18 21:33:52
你可以试试下面的-
SELECT * FROM wms where not exists
(select 1 from outerb where concat('0',barcode,checkdigit) = wms.barcode)
and wms.barcode like '0123%'发布于 2019-03-18 21:38:28
这将为您提供在OUTERB中没有匹配的所有WMS行:
select *
from wms
where not exists
(
select null
from outerb o
where concat('0', o.barcode, o.checkdigit) = wms.barcode
);或者使用NOT IN
select *
from wms
where barcode not in (select concat('0', o.barcode, o.checkdigit) from outerb);发布于 2019-03-18 21:35:55
您可以尝试:
SELECT * FROM wms where wms.barcode not in (select concat('0',barcode,checkdigit) from outerb);https://stackoverflow.com/questions/55222547
复制相似问题