Files
FullAutoWaterCheck/db/verify_split_columns.sql
GukSang.Jin 6f2a810e00 优化
2026-02-04 09:58:56 +08:00

89 lines
2.6 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- =====================================================
-- 验证脚本:检查联络单号和件号字段是否正确
-- 创建时间2026-02-04
-- =====================================================
USE fullautowaterpressure;
-- 1. 检查normaltemperature表结构
SHOW COLUMNS FROM normaltemperature LIKE '%Contact%';
SHOW COLUMNS FROM normaltemperature LIKE '%Item%';
-- 2. 检查scandata表结构
SHOW COLUMNS FROM scandata LIKE '%Contact%';
SHOW COLUMNS FROM scandata LIKE '%Item%';
-- 3. 检查索引
SHOW INDEX FROM normaltemperature WHERE Key_name LIKE 'idx_%';
SHOW INDEX FROM scandata WHERE Key_name LIKE 'idx_%';
-- 4. 统计normaltemperature表数据
SELECT
'报表数据统计' as ,
COUNT(*) as ,
COUNT(ContactNumber) as ,
COUNT(ItemNumber) as ,
COUNT(CASE WHEN ContactNumber IS NOT NULL AND ItemNumber IS NOT NULL THEN 1 END) as ,
COUNT(CASE WHEN ContactNumber IS NULL OR ItemNumber IS NULL THEN 1 END) as
FROM normaltemperature;
-- 5. 统计scandata表数据
SELECT
'扫码数据统计' as ,
COUNT(*) as ,
COUNT(ContactNumber) as ,
COUNT(ItemNumber) as ,
COUNT(CASE WHEN ContactNumber IS NOT NULL AND ItemNumber IS NOT NULL THEN 1 END) as ,
COUNT(CASE WHEN ContactNumber IS NULL OR ItemNumber IS NULL THEN 1 END) as
FROM scandata;
-- 6. 查看normaltemperature最新10条记录
SELECT
Id,
barcode as ,
ContactNumber as ,
ItemNumber as ,
CreateTime as
FROM normaltemperature
ORDER BY Id DESC
LIMIT 10;
-- 7. 查看scandata最新10条记录
SELECT
Id,
barcode as ,
ContactNumber as ,
ItemNumber as ,
CreateTime as
FROM scandata
ORDER BY Id DESC
LIMIT 10;
-- 8. 检查数据一致性barcode应该等于ContactNumber-ItemNumber
SELECT
'数据一致性检查' as ,
COUNT(*) as
FROM normaltemperature
WHERE barcode IS NOT NULL
AND ContactNumber IS NOT NULL
AND ItemNumber IS NOT NULL
AND barcode != CONCAT(ContactNumber, '-', ItemNumber);
-- 9. 查找可能有问题的数据
SELECT
Id,
barcode,
ContactNumber,
ItemNumber,
CONCAT(ContactNumber, '-', ItemNumber) as barcode
FROM normaltemperature
WHERE barcode IS NOT NULL
AND ContactNumber IS NOT NULL
AND ItemNumber IS NOT NULL
AND barcode != CONCAT(ContactNumber, '-', ItemNumber)
LIMIT 10;
-- =====================================================
-- 验证完成
-- =====================================================