The Transact -SQL database programmeringsspråk er en dialekt av industri - standard SQL eller Structured Query Language . Microsofts SQL Server og Sybase ' databaseservere bruke Transact -SQL å bygge, vedlikeholde og få tilgang til relasjonsdatabaser. Programmerere ofte manipulere tegnstrenger , for eksempel når du søker etter tallene " 123 " på en liste over millioner av førerkort nummer , eller kombinere fornavn og etternavn i ett felt . For å gjøre dette , bruker de strengfunksjonene bygget inn Transact -SQL . Character Strings
En tegnstreng er en type data felt som inneholder noen form for tekst, for eksempel bokstaver , tall, tegnsetting og spesialtegn. For eksempel en persons navn og gateadresse telle som tegnstrengene . En streng har en lengde , og du kan plukke strengen hverandre tegn for tegn ved å identifisere steder i strengen . For eksempel har strengen " Abraham Lincoln" en lengde på 15 tegn . Den femte tegnet i strengen er en "h ". Selv om du kan lagre tall i tegnstrenger , kan du ikke utføre aritmetikk på dem med mindre du konvertere dem til et numerisk datatype først.
Sammenkobling og separasjon
å kombinere to strenger i Transact - SQL, bruke et plusstegn ( + ) mellom dem . Å kombinere for-og etternavn felt , bruker du følgende kode : table_name ( " first_name ") + '' + table_name ( " etternavn ") Legg merke til den ekstra plassen sammensatt i midten for å skille de to ordene . Når du kombinerer to eller flere strenger på denne måten , programmerere kaller det " avkortingsoperatorer . " Du bruker HØYRE ( ) , venstre ( ) og understreng ( ) funksjoner for å skille en streng i mindre deler. HØYRE ( ) og VENSTRE ( ) hver ta to parametre: string og en lengde nummer. Understreng ( ) tar tre parametere: en streng, et utgangspunkt og en lengde . HØYRE ( ) returnerer den høyre tegn , venstre ( ) gir lengst til venstre , og delstrengen begynner der du forteller det . For eksempel HØYRE (' Abraham Lincoln ', 4 ) returnerer strengen " Coln , " og Venstre ( ' Abraham Lincoln ', 4 ) returnerer ' Abra . Understreng (' Abraham Lincoln ' , 7,3 ) returnerer ' m L , ' gir deg tre tegn , og starter på den syvende.
LTrim , RTRIM og Len
du kan lage en streng vises penere hvis du fjerner blanks fra sin begynnelse eller slutt. For eksempel, hvis " first_name " og " etternavn " var både 15 -tegns fast lengde felt , leser sammensetning av de to, " Abraham Lincoln . " Ved trimming etterfølgende blanks med RTRIM ( ) , bruker du følgende Transact -SQL kode : RTRIM ( table_name ( " first_name ")) + '' + RTRIM ( table_name ( " etternavn ")) Dette gir deg " Abraham Lincoln . " The LTRIM ( )-funksjonen fjerner blanks som fører opp til første nonblank tegnet i en streng. LEN ( ) -funksjonen tar en tegnstreng og returnerer lengden som et heltall . LEN (' Sveits ' ) returnerer 11-tallet .
Charindex
Transact -SQL CHARINDEX ( )-funksjonen undersøker en streng for forekomsten av en mindre streng. Det tar tre parametere : strengen som du søker , strengen skal søkes og en valgfri startposisjon. Den returnerer startposisjonen av strengen , dersom det er funnet , som et tall. Hvis ikke finnes, returnerer CHARINDEX ( ) en null. CHARINDEX (' aha ', ' Abraham Lincoln ") , for eksempel , returnerer en fire . CHARINDEX (' aha ', ' Abraham Lincoln ', 10 ) returnerer en null , som starter med posisjon 10 og flytte til høyre , ingen forekomst av ' aha ' finnes i strengen .
Konvertering
Transact -SQL gir noen funksjoner for å konvertere strenger på forskjellige måter. Den STORE ( ) -funksjonen tar en streng og konverterer alle sine brev til store versjoner . ØVRE (' Abraham Lincoln ") , for eksempel avkastning ' ABRAHAM LINCOLN . 'The NEDRE ( )-funksjonen konverterer alle bokstaver til små bokstaver . NEDRE ( ' Abraham Lincoln ' ) resulterer i " Abraham Lincoln . 'The REVERSE ( )-funksjonen reverserer rekkefølgen av bokstaver , så REVERSE (' Abraham Lincoln ") gir en " nlocniL maharbA .