Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Max value of digits in char(6) string
Message
From
15/02/2012 21:13:09
 
 
To
All
General information
Forum:
Microsoft SQL Server
Category:
Stored procedures, Triggers, UDFs
Title:
Max value of digits in char(6) string
Environment versions
SQL Server:
SQL Server 2008
Miscellaneous
Thread ID:
01535525
Message ID:
01535525
Views:
68
Have a table with about 25000 rows. Column Symbol char(6).

I would like a stored procedure that will accept a parameter that will be char(2)

If @param = 'US'

of the set of symbols beginning with U and followed by a digit - (UK not a match ) , find the max value of the digits in the string ( possible at least one of chars 2-6 will be alpha and that there may be blanks at the end

So
U290
U2888&
U2345
U00001

will get 2888

Then increment that number by 1 , padleft(5) with 0, test to see if 'U'+that string ( U02889 ) is found in the column and if not return that string
If found, increment number and try again until not match is found

If @param is char(2) ( or is not US) , do the same thing but matching against first 2 chars, then performing same procedure on remaining 4 characters.

CZ0001
CZ24&
CZ490#

returns CZ0490 if there isn't already one in the column, else CZ0491 etc until no match.

I can probably kludge up something ugly but I'm sure some of the clever TSQLers here can show me something elegant and I get to learn something.

Thanks in advance


Charles Hankey

Though a good deal is too strange to be believed, nothing is too strange to have happened.
- Thomas Hardy

Half the harm that is done in this world is due to people who want to feel important. They don't mean to do harm-- but the harm does not interest them. Or they do not see it, or they justify it because they are absorbed in the endless struggle to think well of themselves.

-- T. S. Eliot
Democracy is two wolves and a sheep voting on what to have for lunch.
Liberty is a well-armed sheep contesting the vote.
- Ben Franklin

Pardon him, Theodotus. He is a barbarian, and thinks that the customs of his tribe and island are the laws of nature.
Next
Reply
Map
View

Click here to load this message in the networking platform