PRAWO (Transact-SQL)

  • 03/13/2017
  • 2 minuty na przeczytanie
    • j
    • c
    • M
    • i
    • m
    • +8

Dotyczy: SQL Server (wszystkie obsługiwane wersje) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Parallel Data Warehouse

Zwraca prawą część ciągu znaków o podanej liczbie znaków.

Konwencje składni języka Transact-SQL

Syntaktyka

RIGHT ( character_expression , integer_expression ) 

Uwaga

Aby zapoznać się ze składnią języka Transact-SQL dla SQL Server 2014 i wcześniejszych, zobacz Dokumentacja poprzednich wersji.

Argumenty

znak_wyrażenia
Jest wyrażeniem danych znakowych lub binarnych. znak_wyrażenia może być stałą, zmienną lub kolumną. znak_wyrażenia może być dowolnego typu danych, z wyjątkiem text lub ntext, które można niejawnie przekonwertować na varchar lub nvarchar. W przeciwnym razie, użyj funkcji CAST, aby jawnie przekonwertować znak_wyrażenia.

Uwaga

Jeśli string_wyrażenie jest typu binary lub varbinary, RIGHT wykona niejawną konwersję do varchar, a zatem nie zachowa binarnego wejścia.

integer_wyrażenie
Jest dodatnią liczbą całkowitą, która określa, ile znaków znaku_wyrażenia zostanie zwróconych. Jeśli integer_expression jest ujemna, zwracany jest błąd. Jeśli integer_wyrażenie jest typu bigint i zawiera dużą wartość, to znak_wyrażenia musi być dużego typu danych, takiego jak varchar(max).

Return Types

Zwraca varchar, gdy znak_wyrażenia jest nie-Unicode’owym typem danych znakowych.

Zwraca nvarchar, gdy znak_wyrażenia jest typem danych znaków Unicode.

Znaki uzupełniające (pary surogatów)

Przy użyciu kolacji SC, funkcja RIGHT liczy parę surogatów UTF-16 jako pojedynczy znak. Aby uzyskać więcej informacji, zobacz Kolacja i obsługa Unicode.

Przykłady

A: Użycie funkcji PRAWY z kolumną

Poniższy przykład zwraca pięć najbardziej prawych znaków imienia dla każdej osoby w bazie danych AdventureWorks2012.

SELECT RIGHT(FirstName, 5) AS 'First Name' FROM Person.Person WHERE BusinessEntityID < 5 ORDER BY FirstName; GO 

Tutaj znajduje się zestaw wyników.

First Name ---------- Ken Terri berto Rob (4 row(s) affected) 

Przykłady: Azure Synapse Analytics i Parallel Data Warehouse

B. Użycie funkcji RIGHT z kolumną

Następujący przykład zwraca pięć najbardziej wysuniętych na prawo znaków każdego nazwiska w tabeli DimEmployee.

-- Uses AdventureWorks SELECT RIGHT(LastName, 5) AS Name FROM dbo.DimEmployee ORDER BY EmployeeKey; 

Tutaj znajduje się częściowy zestaw wyników.

Name-----lbertBrownrellolters

C. Użycie RIGHT z ciągiem znaków

Następujący przykład wykorzystuje RIGHT do zwrócenia dwóch najbardziej wysuniętych na prawo znaków ciągu znaków abcdefg.

SELECT RIGHT('abcdefg', 2); 

Tutaj znajduje się zestaw wyników.

------- fg

Zobacz także

.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *