专栏名称: Python SQL审天下
专注IT审计20年,坚持原创,乐于分享。如您在IT审计方面有任何业务需求或咨询,欢迎随时与我交流。电话同V:13436509825
目录
相关文章推荐
ZOL中关村在线  ·  现在的手机Type-C真的统一了吗? ·  昨天  
ZOL中关村在线  ·  听“她”在我耳边吟唱孤独摇摆:水月雨 ... ·  4 天前  
EETOP  ·  IEDM 2024 论文合集 ·  4 天前  
51好读  ›  专栏  ›  Python SQL审天下

同一条码取最近入库日期记录

Python SQL审天下  · 公众号  ·  · 2024-02-18 07:00

正文

在一个项目中,需要根据物品的条码获取最近一次入库日期的记录。解决这个问题很简单,只需要使用SQL语言中的MAX函数来获取最大日期即可。如果需要获取最先一次入库日期的记录,可以使用MIN函数来获取最小日期。在这个项目中,我们使用MAX函数来获取最大入库日期,然后通过条码来筛选记录。

1、建表

CREATE TABLE tb (  NO BIGINT,  仓库名称 VARCHAR ( 10 ),  入库日期 date,  条码 VARCHAR ( 10 ));

2、插入数据

INSERT INTO tb SELECT '1','A','2023-01-01','A001' UNION ALLSELECT '2','A','2023-01-02','A001' UNION ALLSELECT '3','A','2023-01-03','A001' UNION ALLSELECT '4','A','2023-01-04','A001' UNION ALLSELECT '13','B','2023-05-01','A001' UNION ALLSELECT '5','B','2023-01-01','A00001' UNION ALLSELECT '6','B','2023-01-02','A00001' UNION ALLSELECT '7','B','2023-01-03','A00001' UNION ALLSELECT '8','B','2023-01-04','A00001' UNION ALLSELECT '9','C','2023-01-01','A000001' UNION ALLSELECT '10', 'C','2023-01-02','A000001' UNION ALLSELECT '11', 'C','2023-01-03','A000001' UNION ALLSELECT '12','C','2023-01-04','A001';
/*no 仓库名称 入库日期 条码1 A 2023-01-01 A0012 A 2023-01-02 A0013 A 2023-01-03 A0014 A 2023-01-04 A00113   B       2023-05-01  A0015 B 2023-01-01 A000016 B 2023-01-02 A000017 B 2023-01-03 A000018 B 2023-01-04 A000019 C 2023-01-01 A00000110   C       2023-01-02  A00000111   C       2023-01-03  A00000112   C       2023-01-04  A001*/

3、获取最近一次入库日期的记录

SELECT * FROM tb t WHERE  入库日期 = (SELECT MAX(入库日期) FROM tb   WHERE 条码 = t.条码);  /*no  仓库名称  入库日期    条码13    B      2023-05-01  A0018     B      2023-01-04  A0000111    C      2023-01-03  A000001*/

今天的分享就到这儿啦,非常感谢您对“Python SQL审天下公众号的关注和点赞。如果您觉得我的公众号能给您带来一丝丝的收获,请多多转发给您的朋友圈,让更多的人看到并了解。也许您不经意间的点赞和转发,会给他人带来独特的体验和感受。