0
我想要一個文本字符串並從它創建一個唯一的數值,我沒有任何運氣。從字符串生成唯一的ID
例如,我有用戶名(第一個和最後一個)和生日。我試圖把這些值和轉換爲varbinary,這從數據給我一個數值,但它不是唯一的。在約700條記錄中,我將至少得到100個重複的數值,但用於生成數字的名字,姓氏和出生日期的文本是不同的。
下面是一些代碼,我一直在努力:
SELECT CONVERT(VARCHAR(300), CONVERT(BIGINT,(CONVERT(VARBINARY, SE.FirstName) + CONVERT(VARBINARY, SE.BirthDate)))) FROM ELIGIBILITY SE
如果我使用的代碼,並轉換以下數據,結果是3530884780910457344.所以從這個獨特的數據生成同一個號碼:
David 12/03/1952
Janice 12/23/1952
Michael 03/24/1952
Mark 12/23/1952
我正在尋找一些方法,越簡單越好,採取這些值,並從該數據生成一個唯一的數值。我之所以需要使用這些值作爲輸入,是因爲我試圖避免在將來創建重複項,並且能夠根據公式預測數值。這就是爲什麼NewID()不適合我的原因。
您需要通過將它們轉換爲char的方式來創建長度相同的varchar列 – Jayvee