2008-12-04 14 views
58

W jaki sposób uczynić pole w słowie sql select, wszystkie wielkie lub małe litery?SQL zmieniając wartość na wielką lub małą literę

Przykład:

select firstname od osoby

Jak zrobić Imię zawsze powrócić górną obudowę i podobnie zawsze powrócić małe litery?

+0

Co się dzieje, kiedy przejść do bazy danych - że (lub innego repozytorium XML?) nie obsługuje zmiany przypadku? Rozważ wykonanie tego w kodzie lub wykonanie operacji niewrażliwych na wielkość liter. –

+0

Dzięki za komentarz ajmastrean. Całkowicie zgadzam się z twoim oświadczeniem i rzadko robię obudowę w SQL, dlatego zapominam, jak to zrobić od czasu do czasu, kiedy mam taką potrzebę. –

Odpowiedz

92
SELECT UPPER(firstname) FROM Person 

SELECT LOWER(firstname) FROM Person 
+8

Czy ta część standardu SQL? – micapam

+0

To działa dla SQLite – CodyMace

16

odpowiednio LCASE lub UCASE.

Przykład:

SELECT UCASE(MyColumn) AS Upper, LCASE(MyColumn) AS Lower 
FROM MyTable 
+0

Czy to jest dla mysql? –

+1

UCASE dla dolnej i LCase dla górnej? –

+0

@Joshua - LCASE i UCASE są wpisane w sam język SQL, niezwiązany z żadną konkretną implementacją SQL w RDBMS. I naprawiłem UCASE/LCASE dla rzeczy Lower/Upper. –

5

SQL Server 2005:

print upper('hello'); 
print lower('HELLO'); 
+0

Perfect. Dziękuję Cirieno! Właściwie to miałem tę odpowiedź, ale chciałem, żeby została ona udokumentowana na przepełnieniu stosu, ponieważ rzadko go używam. Zawsze o tym zapominam. :) –

0

można zrobić:

SELECT lower(FIRST NAME) ABC 
FROM PERSON 

UWAGA: ABC jest używany, jeśli chcesz zmienić nazwę kolumny

1

Można użyć LOWER function i UPPER function. Jak

SELECT LOWER('THIS IS TEST STRING') 

Wynik:

this is test string 

I

SELECT UPPER('this is test string') 

wynik:

THIS IS TEST STRING 
Powiązane problemy