还未发布过话题
  • 我看表中,有些瓶子编号列会写着盒子的编号,
    关系表,即是题中的表我用 table 代替,
    为纠出对应的列有出现非对应类的编码,假设有其他三个表记录着瓶码 bottle,盒码 box,箱码 carton
    1.剔除空值,非对应类的码(比如,瓶码列存在的盒码)。
    select * from table where bottle not exist (bottle_table)
    or box not exist (box_table) or carton not exist (carton_table).
    可以将这些记录复制到另外一个表,
    然后将他删除
    2.找到瓶码和盒子码不是 1:10 的记录
    select * from table group by box having count()!=10
    3.找到盒子码和箱子码不是 1:10 的记录
    select * from table group by carton having count(
    )!=10

    只是个人解题,不知道合不合理,请各位指教。