买书总买重?先分清「重复」有四种,再挑防重的办法

· 约 4 分钟 条形码生成

「这本我是不是买过」——站在书店里想不起来,是几乎所有买书的人都遇到过的事。

但在讨论怎么防之前,得先承认一件事:「重复」不是一种情况,是四种,而且它们的代价完全不同。 把它们混为一谈,就会做出一个要么拦太多、要么拦不住的方案。

四种重复

类型书号内容该不该拦
同版重购相同完全一致必须拦
不同译本 / 校订本不同有实质差异不该拦
精平装换版 / 再版重排不同基本一致给提示,人来定
套装与单行本重叠不同部分重叠拦不住,只能靠记

同版重购是唯一的纯亏损。书号、出版社、译者、装帧全一样,买两本没有任何理由。

不同译本不算重复。 收三个版本《百年孤独》的人不是记性差,是有意为之。任何把这种情况判成「你重复了」的方案,用两周就会被关掉。

精平装换版是最需要人判断的一档。 为了送人、为了替换翻烂的旧书、为了新版补的注释——都是合理的重买。机器能做的只是把「你已有 XX 社 XX 年版」摆出来。

套装与单行本重叠最隐蔽。 买了全集又买单本,或者买了几本单行本再买套装,书号对不上、书名也不完全一样,所有自动化方案都抓不住。这一类只能靠买套装前多想一步。

为什么只按书号判会漏

书号会变的情形比大多数人以为的多:

  • 换出版社
  • 换译者
  • 精装改平装
  • 再版重排、修订版、纪念版
  • 不同开本
  • 引进版与原版

结果就是:你在书店扫一本新版,系统说「没买过」,而旧版正躺在你家书架上。

而且越是经典书越容易中招——经典书版本最多,也最容易每隔几年出个新版。

那为什么还要以书号为主键?因为它是整份书目里唯一没有写法歧义的字段。它在「判定相同」时百分之百可靠,只是在「判定不同」时不可靠。

用法应该是:

  • 书号相同 → 直接判重,不需要人看。
  • 书号不同 → 不下结论,进入第二层比对。

按书名加作者判,会怎样

第二层能补上换版本的漏,但它同时会漏报和误报。

漏报来源:

  • 书名写法差异:副标题带不带、繁简、书名号、空格全半角
  • 译名差异——同一个外国作者在不同出版社译名不同,这是中文书目的老大难
  • 换译者时书名常跟着改

误报来源:

  • 同名不同书,通俗书名尤其多
  • 上下册、系列里的不同卷,书名高度相似
  • 作者的选集与单行本

所以第二层的正确形态是提示,不是判定

书号不同,但书名作者一致。你已有:XX 出版社,2019 年版。

把决定权交回给人。任何试图把第二层也自动判死的方案,都会在你有意收多译本时变成骚扰,然后被关掉。

一个被普遍忽略的点:送人和卖掉的书要留在书单里

多数人的书单只记「现在还在家的书」。这恰恰是重复购买的高发区。

道理很直接:你送人的那本书,下次在书店看到时的心理反应和没买过一模一样。 卖掉的书往往是你判断过「不值得留」的,重买等于把同一个错误犯两遍。

正确做法是给每册书一个状态——在架、借出、在读、已送人、已售出、已丢失——终态保留记录,不删行,查重时全量参与,统计藏书量时按状态过滤。

删行是最省事的操作,也是让防重方案缺一大块的操作。

决定成败的不是精度,是查询发生在哪里

这是本文最想说的一句:衡量防重方案的标准,不是查得准不准,是能不能在书店里三秒内查完。

对照一下常见方案:

方案查得准书店里能用
电脑上的表格不能
手机笔记里的清单一般理论上能,实际上没人翻
拍书架照片没有检索能力
靠记忆两百本以内能,但会错
扫码查询

一份设计精良、字段齐全、公式完备的 Excel 藏书表,防不住任何一次在书店发生的重复购买——因为你不会在书店打开电脑。

真正决定成败的是三个属性:手机上、三秒内、一只手。任何需要坐下来、需要打字超过几个字、需要在长列表里滚动的方案,在结账队伍里都会被跳过。

扫码之所以关键,不是因为它判得准(它只解决第一层),而是因为它把查询动作压缩成了「举起手机对一下」。

买之前查,还是买回来登记

两件事都要做,但优先级不同:先保证买之前能查,再谈登记完整度。

登记做得再全,如果查询不方便,也只是攒了一份漂亮的档案;反过来,只要能在书店查,哪怕字段不全,收益已经拿到大半。

节奏上:

  1. 买之前:扫一下,看有没有命中;书号没命中,再用书名搜一次。
  2. 买回来:当场登记,不要攒。攒到周末统一录入这件事,没有人能坚持三个月。
  3. 登记的最低限度:书号、书名、位置。评分和读后感想写再写。

最后一个反向提醒:不要为了书目完整而在录入上做加法。 录入越重,登记越容易断;一旦断了,查重就失效了。

这才是绝大多数藏书管理方案真正的死因——不是设计不好,是太好了。

❓ 常见问题

到底哪几种情况算「买重了」?

四种,但只有第一种是纯亏损一、同版重购:同一个 ISBN 买了两本,书号、出版社、译者、装帧全一样。这是纯粹的浪费,任何方案都应该拦下来。二、不同译本/校订本:书号不同,内容有实质差异。这不该算重复——收《百年孤独》三个译本的人不是记性差,是有意为之。三、精装改平装、再版重排:书号不同,内容基本一致,差别在纸张、开本、排版、修订幅度。这是最需要人判断的一档:为了送人、为了替换旧书、为了新版补了注释,都是合理的重买。四、套装与单行本重叠:最隐蔽的一种。买了全集又买单本,或者买了单本再买套装,书号完全不同,书名也不完全一样,所有自动化方案都抓不住,只能靠人记得。结论:机器该拦的只有第一种,第三种给提示,第二和第四种交给人。

为什么只按 ISBN 查重会漏?

因为换版本就是换书号,而换版本重买恰恰是最常发生的一类重复书号会变的所有情形:换出版社、换译者、精装改平装、再版重排、修订版、纪念版、不同开本、引进版和原版。后果:(1) 你在书店扫一本新版,系统说「没买过」,其实旧版就躺在你书架上;(2) 越是经典书越容易中招——经典书版本多,且过几年就出新版。为什么还是要以 ISBN 为主键:它是唯一不会有写法歧义的字段,判定同一本时它百分之百可靠,问题只出在「判定不同」的时候不可靠。正确用法:ISBN 相同 → 直接判定重复,不需要人看;ISBN 不同 → 不能下结论,要再走一层书名作者的比对。

那按书名加作者判呢?

能补上换版本的漏,但会同时带来漏报和误报,只能当提示不能当判定漏报来源:(1) 书名写法差异——副标题带不带、繁简、《》要不要、空格全半角;(2) 译名差异——同一个外国作者在不同出版社译名不同,这是中文书目的老大难;(3) 换译者时书名也常跟着改。误报来源:(1) 同名不同书,尤其是通俗书名;(2) 上下册、系列里的不同卷,书名高度相似;(3) 作者的选集和单行本。所以正确的呈现方式是分级:书号相同的说「已经有了」,书名作者相同书号不同的说「可能是同一本书的另一个版本,你已有的是 XX 社 XX 年版」,把决定权交回给人。任何试图把第二级也自动判死的方案,都会在你有意收多译本时变成骚扰。

已经送人或卖掉的书,还要留在书单里吗?

必须留,而且要继续参与查重——这是防重方案里最容易被删掉、也最不该删的部分理由:(1) 你送人的那本书,下次在书店看到时的心理反应和没买过一模一样,照样会买;(2) 卖掉的书往往是你判断过「不值得留」的,重买等于把同一个错误犯两遍;(3) 丢失的书更需要留痕——你需要知道它是丢了还是从没买过。正确做法:给书加状态字段(在架/借出/已送人/已售出/已丢失),终态保留记录而不是删除行,查重时全量参与,统计藏书量时按状态过滤。这一条的价值最容易被低估:多数人的书单里只有「现在还在家的书」,而重复购买的高发区恰恰是那些已经不在家的书。

用什么方案防重最有效?

衡量标准不是查得准不准,而是能不能在书店里三秒内查完这是所有方案的分水岭:(1) Excel 表格——查得准,但只能在电脑前用,而买重是在书店发生的;(2) 笔记软件的清单——手机上能开,但几百条里搜一本书,实操中很少有人真的做;(3) 拍照存书架——完全没有检索能力,等于没有;(4) 靠记忆——超过两百本就不可能。真正决定成败的三个属性手机上、三秒内、一只手。任何需要坐下来、需要打字超过几个字、需要在长列表里滚动的方案,在书店的真实场景里都会被跳过。扫码之所以关键,不是因为它准,是因为它把查询动作压缩到了「举起手机对一下」——这是唯一能在结账队伍里完成的操作。

买之前查,还是买回来再登记?

两件事都要做,但优先级不同:先保证买之前能查,再谈登记完整度为什么:(1) 登记做得再全,如果查询不方便,防不住重复购买,只是一份漂亮的档案;(2) 反过来,只要能在书店查,哪怕书目字段不全,也已经拿到了绝大部分收益。实践节奏:(1) 买之前:在书店扫一下要买的这本,看有没有命中;(2) 买回来:当场登记,不要攒——攒到周末统一录入这件事,没有人能坚持三个月;(3) 登记时最低限度:书号、书名、位置。评分和读后感想写再写,不写也不影响防重。一个反向的提醒:不要为了书目完整而在录入上做加法。录入越重,登记越容易断,断了之后查重就失效了——这才是绝大多数藏书管理方案真正的死因。

打开 条形码生成 CODE128/EAN/UPC/ITF/Code39·自定义颜色尺寸·PNG/SVG
家书馆微信小程序码

微信小程序 家书馆 · 家庭藏书管理

买书前先查一下,别再买重。扫一下书背后的条码就登记进家里的书库, 记得清放在哪一格、借给了谁,全家人共用同一个库。

📷 微信「扫一扫」左侧小程序码即可打开

👆 长按上方小程序码,识别打开「家书馆」

看看它能做什么 →

📖 同一工具的其他教程

🔗 相关阅读

全部教程 →