[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

TSQL Question - View

Posted on 2013-01-29
9
Medium Priority
?
270 Views
Last Modified: 2013-02-01
 Select
 LTRIM(RTRIM(UPPER(ISNULL(dbo.Street.Prefix_Full, ''))) 
+  ' ' +     RTRIM(UPPER(ISNULL(dbo.Street.Street_Name, ''))) 
+ ' ' +      RTRIM(UPPER(ISNULL(dbo.Street.Suffix_Cnty, '')))) AS Name
	FROM dbo.Segment INNER JOIN    dbo.Street ON dbo.Segment.Street_ID = dbo.Street.Street_ID

Open in new window



Hey guys
I'm close, I'm using the following code to pull out column and create street names. I am struggling with the part where i need to select the [Suffix_Full] column when [Suffix_Cnty] is not null.
Can someone help?
Thanks
0
Comment
Question by:PtboGiser
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 2
9 Comments
 

Author Comment

by:PtboGiser
ID: 38832641
The Suffix_Full Column would read (Alley) instead of the Suffix_Cnty column would have a value of Al. But only Suffix_Cnty is not null.
Thanks
0
 
LVL 70

Accepted Solution

by:
Scott Pletcher earned 400 total points
ID: 38833130
Not sure I fully understand what your q is.

Maybe something like this?:


SELECT

 LTRIM(RTRIM(UPPER(ISNULL(str.Prefix_Full, '')))
+       RTRIM(UPPER(ISNULL(' ' + str.Street_Name, '')))
+       RTRIM(UPPER(COALESCE(' ' + Suffix_Full, ' ' + str.Suffix_Cnty, '')))) AS Name

FROM dbo.Segment seg
INNER JOIN dbo.Street str ON
    seg.Street_ID = str.Street_ID
0
 
LVL 10

Assisted Solution

by:deviprasadg
deviprasadg earned 600 total points
ID: 38834306
Try This:
 Select
 LTRIM(RTRIM(UPPER(ISNULL(CASE WHEN dbo.Street.Suffix_Cnty IS NOT NULL THEN Suffix_Full 
                                 ELSE dbo.Street.Prefix_Full
                          END, ''))) 
+  ' ' +     RTRIM(UPPER(ISNULL(dbo.Street.Street_Name, ''))) 
+ ' ' +      RTRIM(UPPER(ISNULL(dbo.Street.Suffix_Cnty, '')))) AS Name
	FROM dbo.Segment INNER JOIN    dbo.Street ON dbo.Segment.Street_ID = dbo.Street.Street_ID

Open in new window

0
Learn how to optimize MySQL for your business need

With the increasing importance of apps & networks in both business & personal interconnections, perfor. has become one of the key metrics of successful communication. This ebook is a hands-on business-case-driven guide to understanding MySQL query parameter tuning & database perf

 

Author Comment

by:PtboGiser
ID: 38835294
Select
 LTRIM(RTRIM(UPPER(ISNULL(dbo.Street.Prefix_Full, '')))
+  ' ' +     RTRIM(UPPER(ISNULL(dbo.Street.Street_Name, '')))
+ ' ' +      RTRIM(UPPER(CASE WHEN dbo.Street.Suffix_Cnty IS NOT NULL THEN Suffix_Full
                                 ELSE dbo.Street.Suffix_Bell
                          END, ''))) AS Name
      FROM dbo.Segment INNER JOIN dbo.Street ON dbo.Segment.Street_ID = dbo.Street.Street_ID
  Order By Name

Error message
Msg 174, Level 15, State 1, Line 4
The upper function requires 1 argument(s).
0
 

Author Comment

by:PtboGiser
ID: 38835317
Do i require the is ISNULL part anymore?
0
 

Author Comment

by:PtboGiser
ID: 38835328
Select
 LTRIM(RTRIM(UPPER(ISNULL(dbo.Street.Prefix_Full, ''))) 
+  ' ' +     RTRIM(UPPER(ISNULL(dbo.Street.Street_Name, ''))) 
+ ' ' +      RTRIM(UPPER((COALESCE(CASE WHEN dbo.Street.Suffix_Cnty IS NOT NULL THEN Suffix_Full 
                                 ELSE dbo.Street.Suffix_Bell
                          END, ''))))) AS Name
	FROM dbo.Segment INNER JOIN dbo.Street ON dbo.Segment.Street_ID = dbo.Street.Street_ID
  Order By Name

Open in new window


This is giviing me a the Suffix_Full column for all my records. I only want it where Suffix_Cnty IS NOT NULL.
Thanks for the help
0
 
LVL 70

Expert Comment

by:Scott Pletcher
ID: 38835557
The "CASE WHEN Suffix_Cntry IS NOT NULL THEN" will add Suffix_Full ONLY when the condition is true.

What is "Suffix_Bell"?
0
 

Author Comment

by:PtboGiser
ID: 38835579
Hey Scott
Suffix_Bell is the abbrviation of Suffix_Full.  
Suffix_Cnty is also the abbrviation of Suffix_Full.
When Suffix_Bell is populated (Rd(in Suffix_Bell) = Road(in Suffix_Full) Suffix_Cnty will be Null. and Vise Versa.

Suffix_Bell & Suffix_Cnty connot both be populated, its one or the other or niether.

The wierd part of this request is.

When Suffix_Cnty is not null i need to populate the Name field with
Prefix_Full + Street_Name + Suffix_Full (When Suffix_Cnty IS NOT NULL)

When Suffix_Bell is not null i need to populate the Name field with only
Prefix_Full + Street_Name. The Suffix_Bell Column gets put in the Type Field.
Which reading back i think i explained this part wrong to start. Sorry about that
0
 

Author Comment

by:PtboGiser
ID: 38839704
Anyone have a chance to work this one? I'm stuck
Thx
0

Featured Post

Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Ready to get certified? Check out some courses that help you prepare for third-party exams.
One of the most important things in an application is the query performance. This article intends to give you good tips to improve the performance of your queries.
Via a live example combined with referencing Books Online, show some of the information that can be extracted from the Catalog Views in SQL Server.
This videos aims to give the viewer a basic demonstration of how a user can query current session information by using the SYS_CONTEXT function

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question