SQLShack (Suomi)

posted in: Articles | 0

tässä artikkelissa, aiomme keskustella ja oppia perusasiat, ja kaikki tiedot SQL Server tiedot tyyppi muuntaa toimintaa ja myös me tarkastelemme SQL MUUNTAA ja TRY_CONVERT rakennettu-in toimintoja eri näytteitä. Aluksi, me selittää ja selventää syntaksin SQL-toiminto MUUNTAA ja sitten me opimme, miten voimme tehdä tietojen muuntaminen prosessi numeerinen ja päivämäärä/aika tiedot eri merkin tiedot.,

vs Implisiittinen Eksplisiittinen

muuttamassa tiedot tyyppi arvo tietotyyppi on tarkoitettu, kuten tietotyyppi muuntaminen ja myös lähes kaikki ohjelmointi kieliä ovat jonkinlainen tietojen muuntaminen toimintoja tai toimintoja. Kun me käännämme näkökulman SQL Server keskustelemaan yksityiskohtia SQL-tietojen muuntaminen toiminnot, aluksi voimme erottaa tietojen muuntaminen prosessi kahteen osaan; implisiittinen ja eksplisiittinen tuloksia., Implisiittinen muuntaminen tehdään SQL Server sisäisiä tarpeita, ja voit myös löytää lisätietoja artikkelissa Implisiittinen muuntaminen SQL Server. Avointa muuntaminen suoritetaan nimenomaisesti tietokannan ohjelmoija tai ylläpitäjä ja samalla tämä muuntaminen prosessi on tehty apua tietojen muuntaminen toiminto. Tässä artikkelissa keskitymme erityisesti SQL CONVERT-funktioon. Tämä toiminto tarjoaa keinon muuntaa yksi tietotyyppi toiseen määritettyyn tietotyyppiin. Aluksi tulkitsemme SQL CONVERT-funktion syntaksin.,

Syntax

1
CONVERT (tietotyyppi (pituus), ilmaisu, tyyli)

data_type: Tämä parametri määrittelee kohde-tietojen tyyppi, jotka on muunnettava. data_type-parametri voi ottaa nämä tietotyypit syötteenä, joka esitetään alla olevassa matriisiluettelossa.

pituus: tämä on valinnainen parametri, joka määrittää kohdetietotyypin pituuden., Tämän parametrin oletusarvo on 30.

lauseke: tämä parametri määrittää arvon, jonka Haluamme muuntaa toiseen tietotyyppiin.

style: Tämä on kokonaislukuparametri, joka määrittää muunnetun arvon lähtötyylin. Tämä arvo on hyödyllisempi datatyyppiformaatteja.

nyt vahvistamme tätä teoreettista ohjeistusta erilaisilla käytännön näytteillä.

Muunna Float Int

tässä esimerkissä muunnamme float-datatyypin kokonaisluvuksi., Seuraavassa kyselyn, me julistaa muuttuja, jonka tietotyyppi on liukuluku ja sitten käytämme SQL-toiminto MUUNTAA jotta muuntaa float arvo kokonaisluku niin, että me suorittaa tietojen muuntaminen toimintaa.,

1
2
3
4
5
6

–Julistaa float muuttuja
– SIITÄ, @FloatVal Float
–Määrittää float arvo muuttuja
SET @FloatVal = 1132.,12345
–Muuntaa float arvo int
VALITSE CONVERT(int, @FloatVal) KUTEN ConvertedValue

Muuntaa Float Varchar

tässä esimerkissä, me muuntaa float-arvoa varchar arvo. Tämä esimerkki on hyvin samanlainen kuin edellinen, mutta ainoa ero on, että me muuntaa float arvo varchar.,

1
2
3
4
5
6

–Julistaa float muuttuja
– SIITÄ, @FloatVal Float
–Määrittää float arvo muuttuja
SET @FloatVal = 1132.,12345
–Muuntaa float-arvoa varchar
VALITSE CONVERT(varchar, @FloatVal) KUIN ConvertedValue

seuraavassa esimerkissä emme lähetä mitään arvoa ilman lämpötila parametri SQL-toiminto MUUNTAA niin pituus-parametri on asetettu oletusarvo. Kuten jo totesimme SQL CONVERT-funktion syntaksiselityksessä, tämä oletusarvo on 30 Ja nyt todistamme tämän., Seuraavassa kyselyssä luomme väliaikaisen taulukon ja lisäämme muunnetun arvon tähän taulukkoon ja analysoimme tämän taulukon tietorakenteen.,

1
2
3
4
5
6
7
8
9
10

DROP TABLE JOS on OLEMASSA TestConvertedTable
–Julistaa float muuttuja
JOSSA todetaan @FloatVal Float
–Määrittää float arvo muuttuja
SET @FloatVal = 1132.,12345
–Muuntaa float-arvoa varchar
VALITSE CONVERT(varchar, @FloatVal) KUIN ConvertedValue OSAKSI TestConvertedTable
— Analysoida tilapäinen taulukko
SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE,CHARACTER_MAXIMUM_LENGTH
FROM INFORMATION_SCHEMA.,SARAKKEET, JOISSA TABLE_NAME=’TestConvertedTable’

Kuten voitte nähdä edellä kuva, float data type muutettiin varchar arvo ja meillä ei ole määritetty, pituus-parametri, jotta SQL Server soveltaa oletusarvo pituus parametri 30.

nyt asetamme SQL CONVERT-funktion pituusparametrin ja tarkistamme sitten varchar-tietotyypin pituuden.,

1
2
3
4
5
6
7
8
9
10

DROP TABLE JOS on OLEMASSA TestConvertedTable
–Julistaa float muuttuja
JOSSA todetaan @FloatVal Float
–Määrittää float arvo muuttuja
SET @FloatVal = 1132.,12345
–Muuntaa float-arvoa varchar
VALITSE CONVERT(varchar(20), @FloatVal) KUIN ConvertedValue OSAKSI TestConvertedTable
— Analysoida tilapäinen taulukko
SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE,CHARACTER_MAXIMUM_LENGTH
FROM INFORMATION_SCHEMA.SARAKKEET, JOISSA TABLE_NAME=’TestConvertedTable’

Muuntaa Rahaa Varchar

SQL Server rahaa tiedot tyyppi auttaa tallentaa raha-arvot., Voimme määritellä raha-arvot edeltää valuutan symboli kuitenkin SQL-Palvelin ei säilytä valuutta symboleja tai mitään tietoja, jotka liittyvät valuutta symboli. Seuraavassa kyselyn, me muuntaa rahaa tietotyyppi varchar ja me myös käyttää tyyli parametri SQL-convert-toimintoa. Style-parametrin avulla voimme määrittää pilkun rajaajat ja oikean desimaalinumeron pituuden. Seuraavassa kaaviossa esitetään SQL CONVERT-funktion style-parametriarvo ja-ulostulo.,

Value

Style Parameter

Comma Delimiter

Right decimal digit

Output

no

yes

4,936.,56

ei ole

Muuntaa Float ja Todellinen Varchar

Float ja todellinen tietotyypit ovat likimääräisiä numeerisia tietotyyppejä, SQL Server, ja se tarkoittaa, että nämä tietotyypit eivät store tarkka-arvot. Ne tallentavat erittäin tiiviin likiarvon tallennetusta arvosta. Nyt selitämme likimääräisen numeerisen tietotyypin konseptin., Seuraavassa kyselyssä luomme taulukon, jossa on kaksi saraketta ja näiden sarakkeen tietotyypit ovat kelluvia ja todellisia ja sitten lisäämme joitakin numeerisia arvoja. Oikeastaan odotimme kaksi numeroa taulukossa kuitenkin todellinen ja float tietotyyppi tallentaa lähimmät arvot odotettuja arvoja.

alla oleva taulukko on lainattu Microsoft Docs ja tämä taulukko selittää muuntaa tyyli float ja todellisia tietoja tyypit tekstimuotoinen data.,

Vihje: Tieteellinen notaatio on erityinen menetelmä, jolla ilmaistaan hyvin suuri määrä tai pieniä lukuja, joita käytetään enimmäkseen tieteessä.

Arvo

Lähtö

0 (oletus)

enintään 6 numeroa. Käytetään tarvittaessa tieteellisessä merkinnässä.

Aina 8 numeroa. Käytetään aina tieteellisessä notaatiossa.

Aina 16 numeroa. Käytetään aina tieteellisessä notaatiossa.

Aina 17 numeroa. Käytä häviöttömän muuntaminen., Tällä tyylillä jokainen erillinen float tai todellinen arvo on taattu muuntaa eri merkki merkkijono.

Nyt osoittaa esimerkki, joka sisältää kaikki tiedot muuntaminen tyylejä taulukon mukaan.

Kuten voitte nähdä edellä, tulos osoittaa, että tyyli parametrimuutokset lähtö MUUNTAA SQL-toiminto.

Muunna Päivämäärä/Aika Varchar

Päivämäärä/Aika formaatteja voi vaihdella sen mukaan, maa-asetukset ja tästä syystä edellytämme eri muodoissa edustaa päivämäärä/aika., Kuvittele, että sinulla on sovellus, ja eri maissa käyttäjät käyttävät tätä sovellusta, joten jos joku yhdistää tämän sovelluksen U. S, sinun täytyy edustavat päivämäärä, kuukausi/päivä/vuosi-muodossa. Toisella puolella, toinen käyttäjä yhdistää tämän sovelluksen U. K. ja sinun täytyy edustaa päivämäärä muodossa päivä / kuukausi / vuosi muodossa. Tässä tapauksessa meidän on määritettävä päivämäärä/aika edustaa tyyliä mukaan locale päivämäärä / aika-asetus. sp_helplanguage stored procedure palauttaa tuetut kielet yksityiskohtaisilla tiedoilla SQL Server.,

lisäksi, voimme määrittää kielen totesi istunnossa, ja tällä tavalla voimme mukauttaa päivämäärä/aika toiminnot erityisesti kieli. Seuraavassa kyselyssä asetamme kielen Puolalle ja sitten voimme nähdä kuukauden ja päivän nimen vaihtumisen Puolan lokaalin mukaan.

Vinkki: yleissääntönä on, jos voit suunnitella monikansallisten sovelluksen tietokantaan, aina tallentaa UTC (Coordinated Universal Time) – aikaa yhdessä sarakkeessa niin, että voit välttää päivämäärä/aika ongelmia, koska paikalliset asetukset.,tulos saksalainen standardi, voimme käyttää seuraavan kyselyn:

1
VALITSE GETDATE (), KUTEN CONVERT(Varchar(50),GETDATE(),104)

seuraavassa huijata taulukko, löydät jokaisen käytön yhdistelmä tyyliä parametri, ja koko tuotoksen muodossa SQL CONVERT () – funktio päivämäärä/aika merkki-tietojen konversioita.,

auts, meidän on osoitettava tämä huijata taulukko, jossa kaikki yhdistelmät SQL GETDATE-toiminto, niin että voimme selvittää, vaikutus tyyli parametri SQL-toiminto MUUNTAA lähdöt.

Nyt, me mainita joitakin asioita, jotka meidän on harkittava päivämäärä/aika muuntaminen toimintaa. Alussa tämän jakson, puhuimme SQL Server language vaihtoehtoja ja asetuksia, joten jos haluamme muuttaa kielen asetusta, se vaikuttaa joitakin päivämäärä/aika muuntaminen tyyli lähdöt., Vuonna alla esimerkki, haluamme muuntaa tulokset GETDATE-toiminto, niin tämä asetus vaikuttaa suoraan lyhennetty kuukauden nimi SQL MUUNTAA toiminto.

Toinen näkökohta on noin vuosi-muodossa. Joissakin olosuhteissa, voimme käyttää tyyli parametri, joka ei palaa vuosisadan muodossa, mutta tämä tapaus voi aiheuttaa joitakin hämmentäviä tilanteita. Kuten seuraavassa esimerkissä meillä on kaksi eri päivinä ja myös nämä päivämäärät tallentaa eri vuosina kuitenkin lähtö SQL MUUNTAA toiminta ovat samankaltaisia.,

TRY_CONVERT ()

SQL TRY_CONVERT toiminto on kehittynyt muoto MUUNTAA SQL-toiminto. SQL TRY_CONVERT-toiminnon tärkein etu on suojautuminen tietojen muuntamisvirheiltä kyselyn suorittamisen aikana. On mahdollista, että voimme kokea virheitä data convert-prosessissa SQL-PEITEOPERAATIOLLA ei-sopivien tai likaisten tietojen vuoksi. SQL TRY_CONVERT-funktion avulla voidaan kuitenkin välttää tällaiset virheet. Samalla SQL CONVERT-ja TRY_CONVERT-funktioiden välillä ei ole syntaksieroja., SQL TRY_CONVERT-funktio palauttaa nollan arvon, jos tietojen muuntaminen tuottaa virheen. Alla olevassa esimerkissä ensin yritämme muuntaa merkin arvo kokonaisluku kautta MUUNTAA SQL-toimintoa ja tämä toiminto palauttaa virheen.,

1
VALITSE CONVERT(INT,’AnyString’) KUIN ConvertFunc

toisaalta,, jos käytämme SQL TRY_CONVERT toiminto sijaan SQL-toiminto MUUNTAA saman kyselyn, se palauttaa NULL-arvon.,

1
SELECT TRY_CONVERT(INT,’AnyString’) AS ConvertFunc

Conclusion

In this article, we thoroughly reviewed the SQL CONVERT function syntax, details and significant considerations. Data conversion processes have wide usage, in practice, therefore in this article we demonstrated various examples., Suosittelen, että olet varovainen date/time-tietotyypin muuntamisessa, jos tietokantaasi käytetään eri maissa. Samoin muotoilu päivämäärä / aika tietotyypit on toinen tärkeä kohta.

  • Tekijä
  • Viimeisimmät Viestit
Esat Erkec on SQL Server ammattilainen, joka aloitti uransa 8+ vuotta sitten kuin Ohjelmiston Kehittäjä. Hän on SQL Server Microsoft Certified Solutions Expert.,
suurin osa hänen urastaan on keskittynyt SQL Server-tietokannan hallintoon ja kehittämiseen. Hänen nykyiset intressinsä ovat tietokantojen hallinnossa ja Yritystiedustelussa. Löydät hänet LinkedInistä.,
Näytä kaikki viestit Esat Erkec

Uusimmat viestit by Esat Erkec (katso kaikki)
  • aloittanut SQL – Ohjelmointi- helmikuuta 3, 2021
  • Miten lukea suorittamisen suunnitelma, jossa kaikki yksityiskohdat – tammikuu 28, 2021
  • SQL SELECT TOP lausunnon yhteenveto ja esimerkkejä – 25. tammikuuta 2021

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *