Geekzone: technology news, blogs, forums
Welcome Guest.
You haven't logged in yet. If you don't have an account you can register now.

2 posts

Wannabe Geek

Topic # 60231 22-Apr-2010 14:21
Send private message

Hi there

I need to count the number of records in a table where there are more than three alpha characters in a specific field.

So if there were two records :

Record 1 : Field=OT12/12BV
Record 2 : Field=OT12/12B

and I ran the query, the count would be 1 - as the first record has four alpha characters in the field and the second record has three alpha characters in the field.

I have searched for other questions like this but I guess it is an unusual one as I can't find anyone trying to do exactly this.

Note: the count is for characters A - Z - not special characters.

Any help would be appreciated.

Create new topic
352 posts

Ultimate Geek

  Reply # 321777 22-Apr-2010 17:35
Send private message

You're going to hate this:

select * from MyTable where
Len(MyField) - Len(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(MyField, "A", ""), "B", ""), "C", ""), "D", ""), "E", ""), "F", ""), "G", ""), "H", ""), "I", ""), "J", ""), "K", ""), "L", ""), "M", ""), "N", ""), "O", ""), "P", ""), "Q", ""), "R", ""), "S", ""), "T", ""), "U", ""), "V", ""), "W", ""), "X", ""), "Y", ""), "Z", "")) > 3

I hate it too. Oracle SQL has a translate function that makes this quite a lot shorter.

2 posts

Wannabe Geek

Reply # 321907 23-Apr-2010 07:41
Send private message

lol - yeah that really is ugly huh? Will give it a go.

352 posts

Ultimate Geek

  Reply # 321910 23-Apr-2010 07:46
Send private message

another way is to cartesian join the table with a number table (single column table, where each row is a number in sequence, 1 to 1000), then use an ASC function on MID to return 1 if the ascii code is between 65 and [whatever code for Z] or 0 if it's not A-Z, then sum the result.
it would be quite a lot shorter, but not as easy to understand, from a maintenance standpoint.

Create new topic

Twitter »

Follow us to receive Twitter updates when new discussions are posted in our forums:

Follow us to receive Twitter updates when news items and blogs are posted in our frontpage:

Follow us to receive Twitter updates when tech item prices are listed in our price comparison site:

News »

Microsoft Dynamics 365 Business Central launches
Posted 10-Jul-2018 10:40

Spark completes first milestone in voice platform upgrade
Posted 10-Jul-2018 09:36

Microsoft ices heated developers
Posted 6-Jul-2018 20:16

PB Technologies charged for its extended warranties and warned for bait advertising
Posted 3-Jul-2018 15:45

Almost 20,000 people claim credits from Spark
Posted 29-Jun-2018 10:40

Cove sells NZ's first insurance policy via chatbot
Posted 25-Jun-2018 10:04

N4L helping TAKA Trust bridge the digital divide for Lower Hutt students
Posted 18-Jun-2018 13:08

Winners Announced for 2018 CIO Awards
Posted 18-Jun-2018 13:03

Logitech Rally sets new standard for USB-connected video conference cameras
Posted 18-Jun-2018 09:27

Russell Stanners steps down as Vodafone NZ CEO
Posted 12-Jun-2018 09:13

Intergen recognised as 2018 Microsoft Country Partner of the Year for New Zealand
Posted 12-Jun-2018 08:00

Finalists Announced For Microsoft NZ Partner Awards
Posted 6-Jun-2018 15:12

Vocus Group and Vodafone announce joint venture to accelerate fibre innovation
Posted 5-Jun-2018 10:52 to launch Kogan Mobile in New Zealand
Posted 4-Jun-2018 14:34

Enable doubles fibre broadband speeds for its most popular wholesale service in Christchurch
Posted 2-Jun-2018 20:07

Geekzone Live »

Try automatic live updates from Geekzone directly in your browser, without refreshing the page, with Geekzone Live now.

Are you subscribed to our RSS feed? You can download the latest headlines and summaries from our stories directly to your computer or smartphone by using a feed reader.

Alternatively, you can receive a daily email with Geekzone updates.