miten käyttää Joins and Functions in SQL

siirry osioon

SQL-Johdanto

SQL tulee sanoista strukturoitu kyselykieli. Sitä käytetään pääasiassa tietojen manipulointiin, tietojen muokkaamiseen ja tiedonhakuun. Tämä tulee noin Relational Database Management System (RDBMS).

opimme SQL: n kehittyneemmistä ominaisuuksista, kuten liitoksista ja funktioista.

miten SQL liittyy

yksinkertainen liittymiskeino on yhdistää kaksi tai useampia taulukoita tietyssä tietokannassa. Join toimii kahden taulukon yhteisessä kokonaisuudessa.

liitos sisältää 5 aliliitosta, jotka as; sisempi yhtyy, ulompi yhtyy, vasen yhtyy, oikea yhtyy ja risteytyy.

sisempää liitosta

sisempää liitosta käytetään valitsemaan tietueita, jotka sisältävät yhteisiä tai vastaavia arvoja molemmissa taulukoissa (taulukko A ja taulukko B). Ei-vastaavat eliminoidaan.

niin, katsotaanpa ymmärtää tyyppi liittyy, ja yhteisiä esimerkkejä ja eroja niiden välillä.

Taulukko 1: Työntekijätaulukko (tblEmployee)

Taulukko 2: Osastotaulukko (tbldehuoneistot))

joten, luodaan taulukko tbldosastot ohjelman suorittamiseen.

nyt, aseta tietueet taulukkoon tbldhuoneistot.

Let ’ s create another table tblEmployee for the execution of a program.

joten, aseta tietueet taulukkoon tblEmployee.

siksi yleinen kaava liittyy.

tehdä kysely löytää nimi, sukupuoli, palkka ja Osastonimi sekä taulukoista tblEmployee ja tblDepartments.

Huomautus: liittyä tai sisäinen liittyä tarkoittaa samaa. Mutta aina parempi käyttää sisäinen liittyä, ja tämä määrittää aikomuksesi nimenomaisesti.

lähtö: nyt lopullinen tulostaulukko näyttää tältä;

jos katsot lähtöikkunaa, meillä on vain 8 riviä, mutta taulukossa tblEmployee, meillä on 10 riviä. Emme saaneet Jamesin ja Russellin levyjä. Tämä johtuu siitä, että taulukossa TBLEMPLOYEE oleva osasto on nolla näiden kahden työntekijän osalta eikä vastaa taulukon tbldeyksiköiden tunnuslukua.

joten loppulauseessa sisemmät liitokset palauttavat vain vastaavat rivit sekä taulukoista että ei-vastaavat rivit eliminoidaan sen alaryhmien vuoksi.

Left Join

LEFT Join palauttaa kaikki vastaavat rivit ja ei-vastaavat rivit vasemmasta sivupöydästä. Lisäksi Sisä-join ja vasen join käytetään laajasti toisiaan.

joten otetaan esimerkki, haluan kaikki rivit tblemployeen taulukosta, mukaan lukien JAMES ja RUSSELL records. Sitten lähtö näyttää kuin;

Right Join

RIGHT Join palauttaa kaikki vastaavat rivit ja ei-vastaavat rivit oikeasta sivupöydästä.

joten otetaan esimerkki; haluan kaikki rivit oikeista pöydistä mukaan liittymiseen. Tämän seurauksena olisi kuin;

täysi ulompi liitos

OUTER join tai FULL OUTER Join palauttaa kaikki rivit sekä vasemmalta että oikealta pöydältä, mukaan lukien ei-vastaavat rivit pöydistä.

joten otetaan esimerkki; haluan kaikki rivit molemmista taulukoista, jotka ovat mukana liittymässä.

Ristiliitos

tämä liitos antaa karteesisen tulon liittymäfunktion 2 taulukosta. Tämä liittyminen ei sisällä lauseketta.

niin, ymmärtäkäämme esimerkki: TblEmployee-taulukossa on 10 riviä ja tbldepartment-taulukossa 4 riviä. Niin, Risti liittyy näiden 2 taulukot tuottaa 40 riviä.

miten työskennellä Advance SQL liittyy

tässä istunnossa, selitän nämä asiat seuraavasti;

  • Advanced tai älykäs liittyy SQL Server.
  • Hae tiedot vain vasemmasta taulukosta vastaavilta riveiltä.
  • Hae tiedot vain oikeanpuoleisesta taulukosta.
  • Hae tiedot vain vastaamattomista riveistä sekä vasemmasta että oikeasta taulukosta.

niin, tarkastellaan sekä taulukoita tblEmployee että tblDepartment.

Left Join

niin, katsotaanpa ymmärtää esimerkki, haluan hakea vain ei-vastaavat rivit vasemmasta sivupöydästä.

Lähtö: lopuksi lähtö näyttää tältä;

Right Join

niin, katsotaanpa ymmärtää esimerkki, haluan hakea vain ei-vastaavat rivit oikeasta sivupöydästä.

Lähtö: lopuksi lähtö näyttää tältä;

täysi ulompi liitos

niin, katsotaanpa ymmärtää esimerkki, haluan hakea vain ei-vastaavat rivit oikeasta sivupöydästä ja vasemmasta sivupöydästä ja vastaavat rivit olisi poistettava.

tuloste: lopuksi tuloste näyttää tältä;

SQL: n Avaintyypit

SQL: n avain on tietokenttä, joka yksilöi yksinomaan tietueen. Toisessa sanassa avain on sarakkeiden joukko,jota käytetään taulukon tietueiden yksilöimiseen.

  • luo suhteita kahden taulukon välille.
  • säilytä ainutlaatuisuus ja vastuu taulukossa.
  • säilytä yhdenmukaiset ja pätevät tiedot tietokannassa.
  • saattaa auttaa tiedonhaussa nopeasti helpottamalla sarakkeiden indeksejä.

SQL server sisältää avaimia seuraavasti;

  1. Ehdokasavain
  2. ensisijainen avain
  3. ainutlaatuinen avain
  4. vaihtoehtoinen avain
  5. yhdistelmäavain
  6. Superavain
  7. ulkomainen avain

ennen kuin siirrytään eteenpäin, ja katso alla oleva kuva;

selvitetään kunkin avaimen yksityiskohdat

Ehdokasavain

ehdokasavain on taulukon avain, joka voidaan valita taulukon ensisijaiseksi avaimeksi ja taulukossa voi olla useita ehdokasavaimia, joten yksi voidaan valita ensisijaiseksi avaimeksi.

esimerkki: Employee_Id, License_Number, & Passport_Number näyttää ehdokasavaimet

Primary Key

ensisijainen avain on samanlainen kuin taulukon valittu ehdokasavain, jotta voidaan tarkistaa jokainen taulukossa oleva tietue yksilöllisesti. Näin ollen ensisijainen avain ei sisällä Nollaa missään taulukon sarakkeissa ja se myös säilyttää sarakkeessa ainutkertaisia arvoja. Tässä esimerkissä Employee_Id määrittelee työntekijän taulukon ensisijaisen avaimen. Näin ollen SQL Server Management studiossa Primary key luo oletusarvoisesti ryhmitetyn indeksin kasapöydälle ja taulukkoa, joka ei koostu ryhmitetystä indeksistä, kutsutaan kasapöydäksi. Määritteleekö yhdistämätön ensisijainen avain taulukossa indeksityypin mukaan eksplisiittisesti.

lisäksi taulukossa voi olla vain yksi ensisijainen avain ja ensisijainen avain voidaan määritellä SQL Server-järjestelmässä SQL-lausekkeiden avulla:

  1. Kreeta taulukon lauseke (aikaan taulukon luomisen) – tämän seurauksena järjestelmä määrittelee nimen ensisijainen avain.
  2. muuta taulukon lauseke (käyttäen ensisijaista avainmääritystä) –tämän seurauksena käyttäjä ilmoittaa itse ensisijaisen näppäinmäärityksen nimen.

esimerkki: Työntekijä_id on Työntekijätaulukon ensisijainen avain.

yksilöllinen avain

ainutkertainen avain on paljolti sama kuin ensisijainen avain, eikä siinä ole päällekkäisiä arvoja sarakkeessa. Sillä on alla eroja ensisijaisen avaimen vertailussa:

  1. se sallii yhden nollan arvon sarakkeessa.
  2. oletuksena se luo ei-ryhmitetyn indeksi-ja kasataulukon.

vaihtoehtoinen avain

vaihtoehtoinen avain on samanlainen kuin ehdokasavain, mutta sitä ei ole valittu taulukon ensisijaiseksi avaimeksi.

esimerkki: License_Number ja Passport_Number ovat vaihtoehtoisia avaimia.

yhdistelmäavain

yhdistelmäavain (tunnetaan myös yhdistelmäavaimena tai konsatenoituna avaimena) on kahden tai useamman sarakkeen ryhmä, joka yksilöi taulukon jokaisen rivin yksikäsitteisesti. Lisäksi yhdistelmäavaimen yhdellä yksikkösarakkeella ei välttämättä voida todentaa tietueita yksikäsitteisesti. Tämän seurauksena se voi olla joko ensisijainen avain tai ehdokas avain myös.

esimerkki: taulukossa Työntekijä_id & Salary_kuukausi_vuosi molemmat sarakkeet tarkistavat jokaisen rivin yksilöllisesti palkkataulukossa. Siksi taulukossa on Employee_Id – tai Salary_Month_Year-sarake, joka ei pysty yksilöimään jokaista riviä yksilöllisesti. Voimme luoda yhden yhdistetyn ensisijaisen avaimen Palkkataulukkoon käyttämällä Employee_Id-ja Salary_Month_Year-sarakenimiä.

Superavain

Superavain on joukko sarakkeita, joista kaikki taulukon sarakkeet ovat toiminnallisesti riippuvaisia. Johtuen sarakkeiden joukosta,joka yksilöi taulukon jokaisen rivin. Toisessa sanassa tämä avain sisältää muutamia lisäsarakkeita, joita ei välttämättä tarvita taulukon jokaisen rivin yksilöivään tarkistamiseen. Näyttää siltä, ensisijainen avain ja ehdokas avaimet ovat minimaalinen superkeys tai voit sanoa osajoukko superkeys.

joten katsotaanpa yllä olevaa esimerkkiä, Työntekijätaulukossa sarakkeen nimi Employee_Id tuskin riittää yksiselitteisesti tarkistamaan mitään taulukon riviä. Niin, että mikä tahansa sarakkeen Työntekijätaulukosta, joka sisältää Employee_Id, on superkey Työntekijätaulukolle.

esimerkiksi: {Employe_id}, {Employee_Id, Employee_Name}, {Employee_Id, Employee_Name, Address} jne.

License_Number ja Passport_Number ovat sarakkeiden nimi, se voi myös yksikäsitteisesti tarkistaa minkä tahansa taulukon rivin. Jokainen sarakkeen nimi asettaa joka koostuu License_Number tai Passport_Number tai Employee_Id on superkey taulukon.

esimerkiksi: {License_Number, Employee_Name, Address}, {License_Number, Employee_Name, Passport_Number}, {Passport_Number, Employee_Name, Address, License_Number}, {Passport_Number, Employee_Name}, {Passport_Number, Employee_Id} jne.

ulkomainen avain

FK määrittelee kahden tai useamman kuin kahden taulukon välisen suhteen kerrallaan. Yhden taulukon ensisijaisella avaimella tarkoitetaan vierasta avainta toisessa taulukossa. Vieraalla avaimella voi olla taulukossa päällekkäisiä arvoja, ja myös sillä voi olla nollaarvoja, jos sarakkeen nimi on määritelty hyväksymään vielä null-arvot.

esimerkiksi sarakkeen nimi ”Employee_Id” (joka on Työntekijätaulukon ensisijainen avain ) on ulkomainen avain palkkataulukossa.

Huom: näppäimet kuten ensisijainen avain ja yksilöllinen avain luo indeksejä avainten sarakkeilla. Organisoitu data B-puun rakennesolmussa (tasapainotettu Puu: Lehtisolmut ovat kaikki eri tasolla juuripuolelta) SQL Server-palvelussa. Näin ollen Nonclustered index luo erillisen rakenteen perustietotaulukosta, mutta klusteroitu indeksi muuntaa perustietotaulukon kasarakenteesta B-Puurakenteeksi.

lisäksi ryhmitetty indeksi ei luo erillistä rakennetta perustaulukon lisäksi ja siksi voimme luoda vain yhden ryhmitetyn indeksin pöydälle. Näin ollen voimme lajitella taulukon vain yhdellä tavalla (se voi olla useita sarakkeita lajitella, mutta lajittelu voidaan tehdä vain yhdellä tavalla), joka on järjestyksessä ryhmitelty indeksi.

kuinka toimia SQL-funktioiden kanssa

funktio on entiteettiohjelma, joka on tallennettu SQL Server-tietokantaan joko voit siirtää parametreja tai palauttaa arvon. Lisäksi odotamme joitakin erittäin hyödyllisiä sisäänrakennettuja toimintoja ja käyttäjän määrittämiä toimintoja.

Coalesce-funktio

Coalesce (): tämä funktio palaa vasta ensimmäisenä Ei-NULL-arvona. Niin, Otetaanpa esimerkki yli Coalesce () funktio.

ymmärretään taulukko nimellä ”työntekijä” edellä. Tämän seurauksena näkyy, että osalla työntekijöistä etunimi puuttuu, osalla toinen nimi ja osalla sukunimi puuttuu. Haluan palauttaa vain työntekijän nimen.

miten se toimii? Ymmärtää, käsittelemme etunimi, MiddleName ja sukunimi sarakkeet parametreina COALESCE () funktio. Näin ollen tämä funktio palauttaa vain ensimmäisen Ei-null-arvon sarakkeiden 3: sta.

kysely: valitse Id, COALESCE (etunimi, MiddleName, sukunimi) nimellä TBLEMPLOYEE

lopuksi tuloste näyttää tältä;

Left () funktio

LEFT (Character_Expression, Integer_Expression) – tämä funktio palauttaa tietyn määrän merkkejä annetun merkkiarvon lausekkeen vasemmalta puolelta.

esimerkki: Valitse vasen (”ABCDE’, 3)

Lähtö: ABC

right () funktio

RIGHT (Character_Expression, Integer_Expression) – tämä funktio palauttaa tietyn määrän merkkejä annetun merkkiarvon lausekkeen oikealta puolelta.

esimerkki: Valitse oikea (”ABCDE’, 3)

tuloste: CDE

CHARINDEX () funktio

CHARINDEX (”Ekspressio_to_find”, ”Ekspressio_to_search”, ”Start_Location”) – tämä funktio palauttaa määritetyn arvon lausekkeen alkuasennon merkin alijonossa. Start_location-parametri on valinnainen.

esimerkki: ymmärretään, tehdään ” @ ” – merkin alkuasento sähköpostijonoon ”[email protected]”.

valitse CHARINDEX ( ” @ ” , ”[email protected]’,1)

tuloste: 5

SUBSTRING() funktio

SUBSTRING(lauseke”, ”Start”, ”Length”) – tämä funktio palauttaa substraatin (merkkijonon alaluku) annetusta arvon lausekkeesta. Lisäksi, kun määrität lähtöasennon käyttämällä ’start’ – parametria ja muun merkkimäärän substraatissa käyttämällä’ Length ’ – parametria. Kaikki kolme muuttujaa ovat pakollisia.

Example: I want to display just domain part of the given email ”[email protected]”.

Select SUBSTRING (”[email protected]’,6, 7)

Lähtö: bbb.kom

tämän seurauksena teimme koodauksen lähtöasennolla ja pituusparametreilla. Sen sijaan, että koodaamme parametrit, voimme hakea ne dynaamisesti CHARINDEX () – ja LEN () – merkkijonofunktioilla, kuten alla on esitetty.

esimerkki:
valitse substraatti(”[email protected]”, (CHARINDEX ( ” @ ” , ”[email protected]”) + 1), (LEN(”[email protected]”) – CHARINDEX ( ” @ ” ,”[email protected]’)))

tuloste: bbb.com

otetaan siis todellinen esimerkki Len () -, CHARINDEX () – ja SUBSTRING () – funktioiden käytöstä. Let ’ s think we have a table as allowed below;

niin, kysymys on, miten löydät sähköpostien kokonaismäärän verkkotunnuksittain.

Lähtö: lopuksi lähtö näyttää tältä;

REPLIKATE () funktio

REPLIKATE (String_To_Be_Replicated, Number_Of_Times_To_Replicate) – tämä funktio toistaa merkkijonon annetun pisteen ja määrätyn määrän kertoja.

esimerkki: SELECT REPLIKATE (”Pragim’, 3)

Lähtö: Pragim Pragim Pragim

puhutaan käytännön esimerkistä REPLIKAATIN () funktion käytöstä: Käytämme tätä taulukkoa suurimman osan ajasta, ja loput esimerkit tässä artikkelissa.

joten oletetaan, että meillä on taulukko kuten alla on esitetty;

kysely: valitse Etunimi, Sukunimi, SUBSTRING(Sähköposti, 1, 2) + replikoi(’*’,5) +
SUBSTRING(Email, CHARINDEX (’@’, Email), LEN (Email) – CHARINDEX (’@ ’, Email)+1) as Email
from tblEmployee

Let ’ s make email with 5 * (star) symbols. Tällöin lähtö olisi tällainen

avaruus () funktio

avaruus (Number_Of_Spaces) – tämä funktio palauttaa vain välilyöntien määrän, ja se määritellään termillä Number_Of_Spaces-argumentti.

esimerkki: välilyönti(5) – funktio lisää 5 välilyöntiä etunimen Ja sukunimen välille
valitse etunimi + välilyönti(5) + sukunimi Kokonimenä Tblemployeesta

PATINDEX () funktio

tämä funktio palauttaa vain kuvion ensimmäisen esiintymisen alkusijainnin määrätyssä tehokkaassa lausekkeessa. Näin ollen tarvitaan vain kaksi argumenttia, etsittävä kaava ja ilmaisu. Siksi PATINDEX () muistuttaa CHARINDEXIÄ (). Charindexillä () emme voi käyttää yleismerkkejä, kun taas PATINDEX () sisältää tämän ominaisuuden. Jos annettua kuvioarvoa ei löydy, PATINDEX() palauttaa nollan.

esimerkki: valitse Sähköposti, PATINDEX (”%aaa.com, Sähköposti’) ensimmäisenä yrityksenä tblemployeesta, jossa PATINDEX (’%@aaa.com’, sähköposti) > 0

REPLACE () funktio

REPLACE (String_Expression, Pattern, Replacement_Value), tämä funktio korvaa kaikki määrätyn merkkijonon arvon esiintymät toisella merkkijonon arvolla.

esimerkki: kaikki .COM-merkkijonot korvataan.netillä
valitse Sähköposti, korvaa(Sähköposti,”. com”,”.net’) Konvertedemail alkaen tblEmployee

STUFF () funktio

STUFF (Original_ Expression, Start, Length, Replacement_ Expression), tämä STUFF () – funktio lisää vain Replacement_expression, joka on määritelty aloitusasennossa, sekä poistaa määritellyt merkit käyttäen Pituusparametrin arvon ilmaisua.

esimerkki: valitse etunimi, sukunimi, sähköposti, STUFF(Sähköposti,2,3,’*****’) kuten Tblemployeen sähköpostissa.

Date Time function

SQL Server-tietokannassa on useita sisäänrakennettuja DateTime-funktioita. Useimpia seuraavista toiminnoista voidaan käyttää nykyisen järjestelmän päivämäärän ja kellonajan määrittämiseen ja siihen, mihin SQL server on asennettu.

UTC tarkoittaa siis koordinoitua Yleisaikaa, jonka perusteella maailma säätelee kelloja ja aikatietoja. Huomionarvoinen. GMT: n ja UTC: n välillä on pieniä eroja, mutta tavallisimmissa tarkoituksissa UTC on synonyymi GMT: lle.

niin, Otetaanpa toinen esimerkki kuten alla;

Isdate() – funktio

Isdate () – tämä funktio tarkistaa, onko ainoa annettu arvo, ja onko olemassa voimassa oleva päivämäärä, aika tai aikaleima. Sitten se palaa 1 onnistumisesta, 0 epäonnistumisesta.

esimerkki:
Select ISDATE (’PRAGIM’) – it will returns 0

Example:

Select ISDATE (’Getdate’) — it will returns1

Example:

Select ISDATE(’2018-01-20 21:02:04.167’) — se palauttaa 1

Huomautus: datetime2-arvoille IsDate palauttaa nollan.

esimerkki:

valitse ISDAATTI(’2018-01-20 22:02:05.158.1918447’) — se palauttaa 0.

päivä() funktio

päivä() – tämä funktio palauttaa vain annetun päivämäärän ”kuukauden Päivänumeron”.

esimerkkejä:

Valitse päivä (GETDATE ()) — se antaa tuotoksen kuukauden päivänumeron puolesta ja nykyisen Järjestelmäpäiväajan perusteella.

Select DAY (”01/14/2018”) — se palauttaa 14

Month() funktio

Month() – tämä funktio antaa tuotoksen annetun päivämäärän ”Month number of the year” puolesta.

esimerkkejä:

Valitse kuukausi (GETDATE ()) — tämä funktio antaa tuotoksen ”vuoden kuukauden numeron” puolesta ja nykyisen järjestelmän päivämäärän ja kellonajan perusteella.

Select Month (”05/14/2018) — se palauttaa 5

Year() funktio

Year() – tämä funktio antaa tuotoksen annetun päivämäärän ”Year number” puolesta

esimerkkejä:

Select Year(GETDATE()) — palauttaa vuosinumeron ja perustuu nykyiseen järjestelmäpäivään

valitse vuosi (’01/20/2018) — se palauttaa vuoden 2018

Datename() Funktion

Datename(datepart, date) – tämä funktio palauttaa vain merkkijonon lausekkeen, ja se edustaa vain osaa annetusta päivämäärästä. Nämä toiminnot koostuvat 2 parametrit.

ensimmäinen parametri ”DatePart” määrittää päivämäärän osan, jonka haluamme. Toinen parametri on todellinen päivämäärä, josta haluamme osan päivämäärästä.

Esimerkki 1:

valitse päivämäärä (Päivä, ’2017-04-20 13:47:47.350’) — se palauttaa 20

Esimerkki 2:

valitse päivämäärä (arkipäivä, ’2017-04-20 13:47:47.350’) — se palaa torstaina

esimerkki 3:

valitse päivämäärä (kuukausi, ’2017-04-20 13:47:47.350’) — se palauttaa Huhtikuu

niin, Otetaanpa esimerkki käyttäen joitakin näistä DateTime toimintoja. Tarkastelkaamme taulukkoa tblemployes.

esimerkki: haluan palauttaa kaikki nimet, syntymäajan, päivän, Kuukausinumeron, kuukauden nimen ja vuoden kuten alla on esitetty.

valitse nimi, syntymäaika, päivä(viikonpäivä,syntymäaika), kuukausi(syntymäaika) Montnumero, Päivämäärä(Kuukausi, syntymäaika), vuosi(syntymäaika) työntekijältä

DatePart () funktio

DatePart (DatePart, Date) – tämä funktio antaa kokonaisluvun, joka edustaa määrättyä DatePart-arvoa. Useimmiten funktio on samanlainen kuin DateName () – funktio. DateName() palauttaa vain nvarchar-arvon, kun taas DatePart () palauttaa vain kokonaislukuarvon. Validit DatePart-parametrin arvot on esitetty alla.

Examples:

Select DATEPART(weekday, ’2012-08-30 19:45:31.793’) — se palauttaa 5

valitse päivämäärä(arkipäivä, ’2012-08-30 19:45:31.793’) — it will returns Thursday

DateAdd () Function

DATEADD (datepart, NumberToAdd, date) – This SQL function gives only the DateTime, after specified term NumberToAdd, and to the datepart specified of the given date date.

esimerkkejä:

valitse lisäpäivä (päivä, 10, ’2018-01-20 19:45:31.793’) — se palaa ’2018-01-30 19:45:31.793’

valitse Päivälisäys (päivä, -10, ’2012-08-30 19:45:31.793’)– se palaa ’2018-01-20 19:45:31.793’

DatedDiff () – funktio

DATEDIFF (datepart, startdate, enddate) – tämä funktio antaa niiden määritettyjen päivämäärärajojen lukumäärän, jotka on ylitetty määritettyjen alkamispäivämäärien ja päättymispäivämäärien kesken.

esimerkkejä:

valitse DATEDIFF (kuukausi, ’11/30/2005′,’01/31/2006′) — se palauttaa 2

valitse DATEDIFF (päivä, ’11/30/2005′,’01/31/2006′) — se palauttaa 62

joten otetaan esimerkki, Oletetaan, että meillä on alla oleva taulukko;

Kirjoita siis kysely henkilön iän selvittämiseksi, kun syntymäaika on annettu.

lopuksi, lähtö näyttää alla esitetyllä tavalla.

Cast () – ja Convert () – funktiot

yhden yksikön tietotyypin muuntamiseksi toiseen voidaan käyttää CAST-ja CONVERT-funktioita.

CAST – ja CONVERT-funktion syntaksi:
CAST (lauseke data_type )
CONVERT ( data_type , lauseke )

lisäksi, kuten näette, että CONVERT () – funktiolla on valinnainen tyyliparametriarvo, kun taas CAST () – funktiolla ei ole tätä ominaisuutta.

niin, Otetaanpa esimerkki, otamme taulukon alla;

seuraavat 2 kyselyt muuntaa Dateofbirthin DateTime datatype NVARCHAR. Ensimmäisessä kyselyssä käytetään CAST () – funktiota ja toisessa CONVERT () – funktiota. Lopuksi, lähtö on täsmälleen sama molemmille kyselyt kuten alla.

valitse henkilötunnus, syntymäaika, valettu (syntymäaika nvarchar) tblemployejen Konvertteriksi.

valitse ID, nimi syntymäaika, muunnos (syntymäaika nvarchar) tblemployejen Konvertteriksi.

niin, tehdään TYYLIPARAMETRI muunnoksen() funktion arvosta, ja muotoillaan päivämäärä haluamallamme tavalla. Niin, käytämme 103 kuin kulkee argumentti tyyli parametri alla kyselyn, ja joka muotoilee päivämäärä dd / mm / yy.

valitse ID, Name, Dateofbirted, Convert (nvarchar, Dateofbirted, 103) Transvertedob tblemployes.

katsotaanpa siis käytännön esimerkkiä CAST () – funktion avulla;

oletetaan, että alla on rekisteröintitaulukko;

nyt, etsitään kokonaismäärä rekisteröinnin päivällä.

esimerkki: valitse CAST (RegisteredDate as DATE) rekisteröintipäivänä, laske (Id) Total registrations Tblregistrations Group by CAST (RegisteredDate as DATE)

Output: lopuksi tuotos näyttää ;

käyttäjän määrittelemät funktiot

SQL Server-palvelussa on 3 tyyppiä käyttäjän määrittelemiä funktioita, jotka ovat

  1. Skalaarifunktiot
  2. Inline-taulukon arvoiset funktiot
  3. Multistatement-taulukon arvoiset funktiot

Skalaarifunktiot

skalaarifunktiot vaihtelevat parametreissa, joilla voi olla tai ei ole parametreja, ja antavat aina yhden (skalaarin) arvon ulostulossa. Siksi palautettu arvo voi olla minkä tahansa tietotyypin muodossa paitsi tekstin arvo, teksti, kuva, kohdistin ja aikaleima.

esimerkki: Niin, kehitetään toiminto, joka laskee ja palauttaa ikä henkilön tuotoksessa. Näin ollen, verrata Ikä vaadimme, syntymäaika. Joten, annetaan syntymäaika parametrina. Siksi AGE () – funktio palauttaa kokonaisluvun ja hyväksyy päivämääräparametrin.

valitse dbo.Ikä (dbo.Ikä (”10/08/1982”).

joten otetaan käytännön esimerkki alla olevassa taulukossa seuraavasti;

skalaarikäyttäjän määrittelemiä funktioita voidaan käyttää Select-lausekkeessa alla esitetyllä tavalla.

valitse nimi, syntymäaika, dbo.Ikä (syntymäaika) ikänä tblEmployees

enimmäkseen tarkastella tekstin funktion käytä Sp_helptext Funktionimi.

Inline table-arvostetut funktiot

Inline Table-arvotettu funktio palauttaa aina taulukon tulosteena.

joten otetaan esimerkki alla; luo funktio, joka palauttaa työntekijät sukupuolen mukaan.

käyttäjän määrittelemän funktion kutsumenetelmän vuoksi

valitse * Fn_työllisyysbygender (”mies”)

monen lausekkeen taulukon arvotettu funktio

monen lausekkeen taulukon arvoiset funktiot muistuttavat paljon enemmän Inline taulukon arvoisia funktioita ja niissä on joitakin eroja. Niin, katsotaanpa katsomaan esimerkki, ja sitten huomata eroja.

Työntekijätaulukko

usean lausekkeen taulukon arvo-funktio(MSTVF):

koska kutsuminen menetelmä vthe Multi-statement taulukko arvostettu funktio:
valitse * from fn_mstvf_get employees ()

Conclusion

The JOINs is very much understanding term for beginners during the learning phase of SQL commands. Näin ollen haastattelussa, haastattelija kysyy ainakin yksi kysymys on noin SQL liittyy, ja toiminnot. Niin, tässä viestissä, yritän yksinkertaistaa asioita uusia SQL oppijoita ja tehdä helppo ymmärtää SQL liittyy. Lisäksi funktiot SQL, monet ihmiset ovat vaikeuksia ymmärtää todellinen työ toiminto. Koska SQL sisältää paljon tietoa irtotavarana eri tietokannan ja taulukoiden nimiä. Funktio on SQL Server-tietokantaan tallennettu ohjelma, johon voi syöttää parametreja ja palauttaa arvon. Niin, olen antanut joitakin hyödyllisiä termi työskentelystä toimintoja.

  • tietoja
  • Uusimmat viestit
Seuratkaa minua!

Loginworks-ohjelmistojen tietokannan ylläpitäjä
olen tietokannan ylläpitäjä, jonka vastuulla on ylläpitää yrityksen tietokantojen eheyttä ja toimivuutta. Takaan, että tiedot on tallennettu turvallisesti ja varmistaa, että kaikki käyttäjät ovat tietoisia muutoksista samassa. Sen lisäksi, että hallitsen kaikkia näitä teknisiä binäärejä, rakastan nauttia pienistä asioista elämässäni. Olen innokas foodie joka rakastaa tutkia runsaasti erikoisuuksia kulttuurimme tarjoavat. Harrastan myös urheilua, erityisesti krikettiä. Pidän huolen siitä, etten koskaan jätä väliin viikonloppuaamun krikettiotteluita pitkäaikaisten ystävieni rinnalla. Vaalin täysillä sekä työ-että yksityiselämääni.

Seuratkaa minua!

uusimmat viestit Imran Saifi (Näytä kaikki)
  • ero SQL: n ja MySQL: n välillä – 14. huhtikuuta 2020
  • miten toimia Subqueryn kanssa Tiedonlouhinnassa – 23. maaliskuuta 2018
  • miten käyttää JavaScriptin selainominaisuuksia? Maaliskuuta 9, 2018

Write a Comment

Sähköpostiosoitettasi ei julkaista.