• SQL中一种类似GUID值的函数实现


        开发中会需要用到多列值组合成一个ID值的情况。比如做数据清洗的时候,一张表A有五列,分别是医院、科室、医生、职称、电话。面有许多重复的数据需要和另一个表B(和A列相同)做对比。清洗需要做两件事:1、需要一个值来作为主键,方便后期的数据处理。2、需要对数据源进行去重操作。这里限制的条件是,需要一个主键但这个主键并且这个主键不能唯一标识一行数据(如果使用GUID的话就不能和另一张表做对比了),要标识同一类的数据(A和B的医院、科室、医生、职称、电话的列值都相同)才能进行去重,这时就需要用到多列值组合成一个ID值了。

        当时想到了sql server 中有一个ASCII函数,用于获取字符的ASCII码,每个字符的ASCII都是不一样的所以可以作为这个字符的唯一标识,于是乎根据这个思路实现了生成类似GUID值的函数

        代码如下:
    I9S)OT@CRQ_8O$@{1KLIIST
    上面的算法很简单,但是很好用。
    调用GenUnique函数
    SIC2D]A6OM1@Y%MGJ0@}1XB
    查询的结果
    image

    总结
    编程思想最重要,要灵活些,不要拘于一格

  • 相关阅读:
    捕获组
    re.S解析
    Python eval 函数妙用
    Python tips: 什么是*args和**kwargs?
    HBase 的安装与配置
    HBase 基本操作
    HBase中的备份和故障恢复方法
    Hbase写数据,存数据,读数据的详细过程
    HBase shell
    HDFS的快照原理和Hbase基于快照的表修复
  • 原文地址:https://www.cnblogs.com/Khadron/p/5629466.html
Copyright © 2020-2023  润新知