2013-08-30 17 views
10

ich eine Prozedur bin mit Vornamen und Nachnamen wählenNeue Zeile in SQL Server

declare 
    @firstName nvarchar(50), 
    @lastName nvarchar(50), 
    @text nvarchar(MAX) 

SELECT @text = 'First Name : ' + @firstName + ' Second Name : ' + @lastName 

Der @text Wert wird auf meine Mail gesendet werden, aber der Vorname und Nachname kommen in einzelner Zeile. Ich brauche nur den Nachnamen in der zweiten Zeile

O/P Vorname zeigen: Taylor Nachname: Swift,
Ich brauche die Ausgabe wie folgt unter Format

First Name : Taylor 
Last Name : Swift 

Antwort

10

Versuchen zu verwenden CHAR(13) -

DECLARE 
     @firstName NVARCHAR(50) = '11' 
    , @lastName NVARCHAR(50) = '22' 
    , @text NVARCHAR(MAX) 

SELECT @text = 
    'First Name : ' + @firstName + 
    CHAR(13) + --<-- 
    'Second Name : ' + @lastName 

SELECT @text 
Ausgabe

-

First Name : 11 
Second Name : 22 
+0

Mit nur CHAR (13) gibt seltsames Ergebnis, wenn Ergebnis schriftlich zu trösten. Linien scheinen sich gegenseitig zu überschreiben. Das Hinzufügen von CHAR (10) (= Zeilenvorschub) nach dem CHAR (13) behebt dieses Problem. – Bruno

7

Sie verwenden können

CHAR(13) + CHAR(10) 
+0

dies aus irgendeinem Grunde nicht das heißt Hackerrank in Online-Versionen arbeitet –

1

Sie benötigen CHAR(13) zwischen zwei Zeichenfolge hinzuzufügen.

SELECT @text nvarchar(MAX) = 'First Name : ' + @firstName + CHAR(13) + ' Second Name : ' + @secondName 
5

Versuchen Sie, diese

DECLARE @firstName NVARCHAR(50) 
    , @lastName NVARCHAR(50) 
    , @text NVARCHAR(MAX) 

DECLARE @NewLineChar AS CHAR(2) = CHAR(13) + CHAR(10) 

SELECT @text = 'First Name : ' + @firstName + @NewLineChar + 'Second Name : ' + @lastName 
PRINT @Text 
2

CHAR(13) den Text in neue Linie zeigen, wenn Sie Result to text wechseln.