SAS Procedures

Help using Base SAS procedures
BookmarkSubscribeRSS Feed
jlcalbre
Calcite | Level 5
I ran into a situation where I wasn't getting the expected reults in a Proc SQL query. The line on my select statement was: "sum(case when table.name LIKE '%stove%' then 1 else 0 end) as TotalCount. I wasn't getting the correct results and discovered that the LIKE function is case-sensitive, causing the problem. However, I also discovered if I change the above line to "count(*) as TotalCount" and then use the like statement in the left join line: "LEFT JOIN table on table.id = root.id and table.name LIKE '%stove%' ", it isn't case-sensitive.

1st question, is there a way to make the LIKE function case-insenstive all the time? 2nd question, does anyone know why it would be case-sensitive in certain situations and not in others?
1 REPLY 1
Florent
Quartz | Level 8
Hi,

Using the following statement will probably fit with your needs:

sum(case when upcase(table.name) LIKE '%STOVE%' then 1 else 0 end) as TotalCount

Regards,
Florent

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 7645 views
  • 0 likes
  • 2 in conversation