Laat de getallen de SQL van de woorden tonen
C:/Users/bobo/AppData/Local/YNote/data/qq1BD99A3C386BF33BC41A3E78A77E7734/2698c116efe5423980e1e1395409b41c/i%5B35%7Exc2qdob.png Het gebruik van trinoculaire bewerkingen is prima
C:/Users/bobo/AppData/Local/YNote/data/qq1BD99A3C386BF33BC41A3E78A77E7734/5f6a2d9db0bd43acbef159186eabfd51/6ihqynhx_z89.png SQL kan ook worden geschreven selecteer *, Case Sgroup wanneer 1 dan N'Groep 1' toen 2 dan N'Groep 2' toen 3 dan N'Groep 3' else N'unknown' eindgroepsnaam van @stuinfo =========== Dit onderwerp is SQL select a.StandardId,a.StandardType, case StandardStatus wanneer 1 dan N'void' wanneer 2 dan Niet 'Momenteel Geldig' wanneer 3 dan N'te implementeren'"; anders N'onbekend' eindgroepsnaam, a.StandaardTitel,a.Implementatiedatum,a.ReleaseDatum van OATestStandard a
SQL-leeradres https://www.cnblogs.com/4littleProgrammer/p/4820006.html
Het is bijna tijd om klaar te zijn met werken, dus neem de tijd om het gebruik van SQL samen te vatten.
De rol van CASE in SQL:Een uitdrukking die wordt gebruikt om een lijst van voorwaarden te berekenen, en geeft een van de mogelijke resultaten terug.Het casetype van SQL is If-Esle If-Else of Switch in programmeertalen, maar het wordt niet gebruikt om het uitvoeringsproces van SQL-programma's te regelen, maar als functieKolomlogisch gebruik.
Syntaxis:
zaak [input_expression]
Wanneer when_expression dan result_expression
[... n]
[anders else_result_expression]
einde
Opmerking: [] is optioneel.
Bereid testgegevens voor:
1
2
3
4
5
6
7
8
9
10
11
12
| Verklaar@stuinfoTabel
(idint,
Naam Nvarchar(20),
GeslachtVarchar(1),
sgroupint)
Invoegen in@stuinfo
selecteren 1,'Zhang San','m',1Unie alle
selecteren 2,'Li Si','f',1Unie alle
selecteren 3,'Wang Wu','f',2Unie alle
selecteren 4,'Zhao Liu','m',3Unie alle
selecteren 5,'Gele Zeven','m',3
|
1. Voeg een uitdrukking toe na de casus
Geeft terug op basis van het expressieresultaat.
1
2
3
4
5
6
7
| selecteren*,
Zaaksgroup
wanneer 1 danN'Groep 1'
wanneer 2 danN'Groep 2'
wanneer 3 danN'Groep 3'
andersN'Onbekend' eindeGroepsnaam
Van@stuinfo
|
2. Geen uitdrukking na de zaak
Zonder uitdrukking wordt deze geretourneerd volgens de voorwaarde van wanneer.
| selecteren*,
Zaak
wanneersgroup = 1enGeslacht ='m' danN'De eerste groep jongens'
wanneersgroup = 1enGeslacht ='f' danN'Eerste groep meisjes'
wanneersgroup = 2enGeslacht ='m' danN'De tweede groep jongens'
wanneersgroup = 2enGeslacht ='f' danN'De tweede groep meisjes'
wanneersgroup = 3enGeslacht ='m' danN'De derde groep jongens'
wanneersgroup = 3enGeslacht ='f' danN'De derde groep meisjes'
andersN'Onbekend' eindeOpmerking
Van@stuinfo
|
3. Voor de bestelling door
Als de stored procedure meerdere sorts moet ondersteunen, kun je een parametervariabele doorgeven en vervolgens op basis daarvan beoordelen.
1
2
3
4
5
6
7
| Verklaar@orderbyint
Set@orderby = 1
selecteren * Van@stuinfo
Volgorde door
Zaak wanneer@orderby = 1danlegitimatiebewijseinde Beschrijving,
Zaak wanneer@orderby = 2danlegitimatiebewijseinde
|
Gebruik hier meerdere cases, want de beschrijving moet achter het einde geplaatst worden, anders ontstaan er syntaxisfouten.
4. Voorbeeld:
select a.ApplyId,a.Code,a.CostItemId,a.CostItemName,a.CreatedDate,a.CreatedUserId,a.EquipmentCategroyId,a.Flag,a.FlowTime,a.Name,a.ParentId,a.PassingUserId,a. PassingUserIds,a.PassingUserNamen,a.ProjectId,a.Remark,a.Spec,a.Unit, b.*, c.Code als ParentCode, c.Name als ParentName,Zaaka.ImportFlag wanneer 0dan 'Niet geïmporteerd'wanneer1 dan 'Geïmporteerd' eindealsImportFlagvan EquipmentCategorySolliciteer als een
inner join ProjectViewForJoin als b op a.ProjectId = b.ProjectIdForJoin
binnenste join EquipmentEquipmentCategoryCategory als c op a.ParentId = c.EquipmentCategoryId
|