0% found this document useful (0 votes)
45 views

USE GO: Object - Id

This stored procedure cleans data in the RetailerIncoming table. It performs several updates to standardize data, such as trimming whitespace, uppercasing fields, correcting codes and names, and filling in missing country codes based on state codes. This includes reformatting postal/zip codes, state/province codes, and country codes by linking to reference tables to standardize values.

Uploaded by

api-26916059
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views

USE GO: Object - Id

This stored procedure cleans data in the RetailerIncoming table. It performs several updates to standardize data, such as trimming whitespace, uppercasing fields, correcting codes and names, and filling in missing country codes based on state codes. This includes reformatting postal/zip codes, state/province codes, and country codes by linking to reference tables to standardize values.

Uploaded by

api-26916059
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

\\Elrond\Documents\simon\My Documents\SQL...uspRetailerIncoming_UpdateForCleaning.

sql 1
1 USE OE
2 GO
3
4 /*
5 This stored procedure cleans rows in the RetailerIncoming table
6 */
7
8 /*
9 Drop the object if it already exists
10 */
11 IF OBJECT_ID(N'dbo.uspRetailerIncoming_UpdateForCleaning') IS NOT NULL
12 DROP PROCEDURE dbo.uspRetailerIncoming_UpdateForCleaning
13 GO
14
15 CREATE PROCEDURE dbo.uspRetailerIncoming_UpdateForCleaning
16
17 AS
18
19 -- Trim RetailerIDTheirs, SalesRepIDTheirs
20 UPDATE RetailerIncoming
21 SET
22 RetailerIDTheirs = RTRIM(LTRIM(RetailerIDTheirs)),
23 SalesRepIDTheirs = RTRIM(LTRIM(SalesRepIDTheirs))
24
25 -- Replace empty strings with NULLs in RetailerIDTheirs and SalesRepIDTheirs
26 UPDATE RetailerIncoming
27 SET RetailerIDTheirs = NULL
28 WHERE RetailerIDTheirs = ''
29
30 UPDATE RetailerIncoming
31 SET SalesRepIDTheirs = NULL
32 WHERE SalesRepIDTheirs = ''
33
34 -- Reformat Casing in all rows
35 UPDATE RetailerIncoming
36 SET
37 RetailerCompanyName = dbo.ufnProperCaseString(RetailerCompanyName),
38 RetailerAddress1 = dbo.ufnProperCaseString(RetailerAddress1),
39 RetailerAddress2 = dbo.ufnProperCaseString(RetailerAddress2),
40 RetailerCity = dbo.ufnProperCaseString(RetailerCity),
41 RetailerStateProvAbr = UPPER(RetailerStateProvAbr),
42 RetailerCountryAbr = UPPER(RetailerCountryAbr),
43 RetailerPZCode = UPPER(RetailerPZCode),
44 RetailerFName = dbo.ufnProperCaseString(RetailerFName),
45 RetailerLName = dbo.ufnProperCaseString(RetailerLName),
46 RetailerEmail = LOWER(RetailerEmail)
47
48 -- Reformat RetailerPZCode
49 /* Delete any blank spaces from RetailerPZCode */
50 UPDATE RetailerIncoming
51 SET RetailerPZCode = REPLACE(RetailerPZCode,' ','')
52 WHERE RetailerPZCode LIKE '%[ ]%'
53
54 /* Delete any non-breaking spaces from RetailerPZCode */
55 UPDATE RetailerIncoming
56 SET RetailerPZCode = REPLACE(RetailerPZCode,CHAR(160),'')
57 WHERE RetailerPZCode != ''
58
59 /* Replace any dashes in the RetailerPZCode field with a blank space */
60 UPDATE RetailerIncoming
61 SET RetailerPZCode = REPLACE (RetailerPZCode,'-',' ')
62 WHERE RetailerPZCode LIKE '%[-]%'
63
64 /* Add a blank space between the 3rd and 4th characters in the RetailerPZCode
field, if there isn't one. */
65 UPDATE RetailerIncoming
66 SET RetailerPZCode = STUFF(RetailerPZCode,4,0,' ')
\\Elrond\Documents\simon\My Documents\SQL...uspRetailerIncoming_UpdateForCleaning.sql 2
67 WHERE LEN(RetailerPZCode) = 6
68
69 -- Reformat RetailerStateProvAbr
70 /* Delete any spaces from RetailerStateProvAbr */
71 UPDATE RetailerIncoming
72 SET RetailerStateProvAbr = RTRIM(LTRIM(RetailerStateProvAbr))
73 WHERE RetailerStateProvAbr LIKE '%[ ]%'
74
75 /* Update all typo RetailerStateProvAbr names to short-format (2 characters) */
76 UPDATE RetailerIncoming
77 SET RetailerStateProvAbr = SPTM.StateProvAbr
78 FROM RetailerIncoming AS RI
79 INNER JOIN tblStateProvTypoMismatch AS SPTM
80 ON RI.RetailerStateProvAbr = SPTM.StateProvTypo
81
82 /* Update all long-format RetailerStateProvAbr names to short-format (2
characters) */
83 UPDATE RetailerIncoming
84 SET RetailerStateProvAbr = SPM.StateProvAbr
85 FROM RetailerIncoming AS RI
86 INNER JOIN tblStateProvMaster AS SPM
87 ON RI.RetailerStateProvAbr = SPM.StateProvName
88
89 -- Reformat RetailerCountryAbr
90 /* Delete any spaces from RetailerCountryAbr */
91 UPDATE RetailerIncoming
92 SET RetailerCountryAbr = RTRIM(LTRIM(RetailerCountryAbr))
93 WHERE RetailerCountryAbr LIKE '%[ ]%'
94
95 /* Update all typo RetailerCountryAbr names to short-format (3 characters) */
96 UPDATE RetailerIncoming
97 SET RetailerCountryAbr = CTM.CountryAbr
98 FROM RetailerIncoming AS RI
99 INNER JOIN tblCountryTypoMismatch AS CTM
100 ON RI.RetailerCountryAbr = CTM.CountryTypo
101
102 /* Update all long-format RetailerCountryAbr names to short-format (3 characters)
*/
103 UPDATE RetailerIncoming
104 SET RetailerCountryAbr = CM.CountryAbr
105 FROM RetailerIncoming AS RI
106 INNER JOIN tblCountryMaster AS CM
107 ON RI.RetailerCountryAbr = CM.CountryName
108
109 /* Update all empty value RetailerCountryAbr rows based on RetailerStateProvAbr */
110 UPDATE RetailerIncoming
111 SET RetailerCountryAbr = SPM.CountryAbr
112 FROM RetailerIncoming AS RI
113 INNER JOIN tblStateProvMaster AS SPM
114 ON RI.RetailerStateProvAbr = SPM.StateProvAbr
115 WHERE
116 RI.RetailerCountryAbr IS NULL
117 OR
118 RI.RetailerCountryAbr = ''

You might also like