RíomhairíCineálacha comhaid

SQL ar leith: cur síos, samplaí, airíonna

Go minic nuair a úsáideann tú SQL chun sonraí a aisghabháil ó na táblaí, faigheann an t-úsáideoir bhfuil na sonraí iomarcach gurb ann d'sraitheanna dhúbailt comhionann go hiomlán. Chun a sheachaint ar an staid seo, a úsáid SQL argóint ar leith san abairt Roghnaigh. Beidh an tAirteagal seo samplaí d'úsáid an argóint seo, chomh maith le cásanna inar chóir an t-iarratas tréigthe ag an argóint a phlé.

Sula muid ag dul a mheas na samplaí sonracha, a chruthú ar an mbunachar sonraí is gá cúpla táblaí.

tábla ullmhúcháin

Samhlaigh gur féidir linn an t-eolas siopaí bunachar faoin páipéar balla i láthair in dhá táblaí. Seo oboi tábla (páipéar balla) le réimsí id (aitheantóir uathúil), den chineál (cineál páipéar balla -. Páipéar, vinil, srl), dath (dath), ar struct (struchtúr) agus an praghas (praghas). Agus tábla Ostatki (iarmhair) le réimsí id_oboi (is tagairt í don aitheantóir uathúil sa tábla Oboi) agus comhaireamh (líon na rollaí i stoic).

Líon isteach an tábla sonraí. Sa tábla chur leis an páipéar balla 9 taifead:

Oboi

id

cineál

dath

struct

praghas

1

páipéar

multicolor

cabhraithe

56.9

2

páipéar dúbailte-layered

beige

réidh

114.8

3

vinil

Orange

cabhraithe

504

4

lomra

beige

cabhraithe

1020.9

5

páipéar dúbailte-layered

beige

réidh

150.6

6

páipéar

multicolor

réidh

95.4

7

vinil

donn

réidh

372

8

lomra

bán

cabhraithe

980.1

9

éadach

pink

réidh

1166.5

An tábla leis na hiarsmaí - agus naoi taifead:

Ostatki

id_oboi

comhaireamh

1

8

2

12

3

24

4

9

5

16

6

7

7

24

8

32

9

11

dul ar aghaidh muid go dtí an cur síos ar an t-ordú ar leith sa SQL.

Cuir ar leith sa chlásal Roghnaigh

Ba chóir argóint ar leith a chur díreach tar éis an Rogha-eochairfhocal sna ceisteanna. Rinne sé iarratas chuig na colúin ar fad a shonraítear san abairt Roghnaigh, toisc go mbeidh sé a choinneáil amach as an toradh cheist deiridh teaghráin comhionann go hiomlán. Dá bhrí sin, tá uair amháin go leor chun a shonrú agus tú ag scríobh SQL «roghnú ar leith» iarratas. Is í an eisceacht úsáid na feidhmeanna chomhiomlán ar leith taobh istigh go bhfuil cuma ar beagán níos déanaí.

Ba chóir a mheabhrú go bhfuil an chuid is mó ar an mbunachar sonraí agus ní aithníonn do chineál an iarratas:

SELECT Ostatki.Count leith, Oboi leith. *

Ó oboi

INNER JOIN Ostatki AR Oboi.id = Ostatki.id_oboi

Níor measadh go raibh ann argóint arís agus arís eile nó aon uair amháin sonraithe, ach roimh an dara, tríú nó colún roghnaithe eile. Gheobhaidh tú earráid tagairt earráid i error.

seirbhísí ceisteanna Iarratais ar leith i caighdeánach

Tá sé soiléir go bhfuil táblaí struchtúr foirgnimh cuí agus iad a líonadh laistigh tábla amháin as an áireamh an scéal nuair nach bhfuil teaghráin comhionann go hiomlán. Dá bhrí sin, an t-fhorghníomhú cheist «Roghnaigh * ar leith» le sampla de thábla amháin Is praiticiúil.

Smaoinigh ar staid nuair is gá dúinn a fháil amach cén cineál atá againn páipéar balla, ach áis tagartha, de a shórtáil de réir cineáil:

SELECT Oboi.type

Ó ordú Oboi de réir cineáil

Agus a fháil ar na torthaí:

cineál

páipéar

páipéar

páipéar dúbailte-layered

páipéar dúbailte-layered

vinil

vinil

éadach

lomra

lomra

Mar a fheictear sa tábla tá sraitheanna ndúblach. Má táimid ag an togra Roghnaigh leith:

SELECT Oboi.type leith

Ó ordú Oboi de réir cineáil

a fháil againn an toradh gan athrá:

cineál

páipéar

páipéar dúbailte-layered

vinil

éadach

lomra

Dá bhrí sin, más rud é dul isteach i gceart na sonraí i dtábla, ansin láithreach tar éis glaoch gutháin nó arna iarraidh sin ceannaitheoirí féidir linn freagra nach bhfuil an páipéar balla leacht, fiberglass agus páipéar balla aicrileach ar fáil sa siopa. Ós rud é go an raon siopaí níl sé teoranta de ghnáth do chéad páipéar balla, breathnú ar an liosta de na cineálacha neamh-uathúil bheadh sách dian ar shaothar.

Feidhm feidhmeanna comhiomlán leith laistigh

Is féidir le argóint SQL ar leith a úsáid le haon fheidhm comhiomlán. Ach beidh don Min agus Max a chur i bhfeidhm nach bhfuil aon éifeacht, ach an tsuim nó meánluach á ríomh is annamh staid ina mbeadh duine ar bith a na repetitions a chur san áireamh.

Cuir ba mhaith linn a sheiceáil leis an cumas ár stóras agus a sheoladh an iarraidh seo Computes, líon iomlán na cornaí i stoic:

suim SELECT (Ostatki.count)

Ó Ostatki

Beidh Iarratas thabhairt ar an freagra 143. Más rud é, áfach, beidh muid ag athrú go:

suim SELECT (Ostatki.count ar leith)

Ó Ostatki

táimid ag a fháil iomlán na 119, mar ballapháipéir haghaidh uimhreacha chuid 3 agus 7 i stoc ar an méid céanna. Mar sin féin, tá sé soiléir go bhfuil an freagra mícheart.

An chuid is mó a úsáidtear go minic i SQL fheidhm ar leith Líon. Mar sin, is féidir linn a fháil amach go héasca cineálacha ar leith cé mhéad de pháipéar falla, dhéanaimid:

count SELECT (Oboi.type ar leith)

Ó oboi

Agus a fháil ar an toradh ar 5 - páipéar gnáth agus vinil double-ciseal agus fabraic neamh-fite. Surely go léir le feiceáil ar na fógraí, mar shampla: "Ach ní mór dúinn níos mó ná 20 cineálacha éagsúla de pháipéar falla," a chiallaíonn go bhfuil an siopa rollaí ní ach cúpla dosaen agus éagsúlacht de chineálacha ballapháipéir nua-aimseartha.

Tá sé suimiúil go sa cheist chéanna, is féidir leat a shonrú feidhmeanna éagsúla ar nós Líon tréith SAINIÚIL, agus gan é. Is é sin an cás ach amháin nuair is féidir ar leith i Select'e a am i láthair agus arís eile.

Nuair a thréigean le húsáid an argóint

Ó úsáid SQL argóint ar leith léiriú a thuilleadh i gceann amháin de dhá chás:

  1. a dhéanamh tú rogha de táblaí agus go bhfuil siad muiníneach i luach uathúil do gach. Sa chás seo, is é an úsáid a bhaint an argóint mí-oiriúnach, toisc go bhfuil sé ina ualach breise ar an bhfreastalaí nó cliant (ag brath ar an gcineál DBMS).
  2. An bhfuil tú eagla ar chailliúint do shonraí. Lig dúinn a mhíniú.

Iarrann Boss is dócha tú a liostú ar an páipéar balla a bhfuil tú, leis an tásc amháin de dhá cholún - an cineál agus dath. As nós, a thabhairt duit argóint ar leith:

SELECT Oboi.type leith, Oboi.color

Ó oboi

ORDÚ AG Oboi.type

Agus - chailleadh roinnt sonraí:

cineál

dath

páipéar

multicolor

páipéar dúbailte-layered

beige

vinil

donn

vinil

Orange

éadach

pink

lomra

beige

lomra

bán

D'fhéadfadh sé a thabhairt le tuiscint go bhfuil an páipéar balla páipéar (traidisiúnta agus dé-ciseal) ní mór dúinn ach aon intinn, i ndáiríre, fiú amháin inár tábla beag de dhá earra (mar thoradh gan ar leith):

cineál

dath

páipéar

multicolor

páipéar

multicolor

páipéar dúbailte-layered

beige

páipéar dúbailte-layered

beige

vinil

donn

vinil

Orange

éadach

pink

lomra

bán

lomra

beige

Dá bhrí sin, mar atá i scríbhinn d'aon iarraidh isteach chuig an ngá argóint ar leith a bheith cúramach agus inniúil cinneadh a dhéanamh a chur i bhfeidhm, ag brath ar an tasc.

malartacha ar leith

Murab ionann agus an argóint ar leith - All argóint. Ina fheidhm maidir sraitheanna dhúbailt a stóráil. Ach mar an mbunachar réamhshocraithe agus faigheann go bhfuil sé riachtanach a chur ar taispeáint go léir na luachanna, an argóint Uile - tá sé in áit qualifier ná an argóint fheidhm iarbhír. Tá súil againn go dtuigeann tú anois go bhfuil ar leith (SQL) a úsáidtear. Tuairisc a thabhairt duit eolas a fháil maidir leis an bhféidearthacht úsáid a bhaint leis an argóint i réiteach fadhbanna éagsúla. Tar éis an tsaoil, mar a d'éirigh sé amach, seithí fiú a leithéid de argóint simplí ina hiarratas deis ann an-inláimhsithe a chailliúint cuid de na sonraí agus íomhá eolas míchruinn.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ga.birmiss.com. Theme powered by WordPress.