Vraag : SQL de Code van de Vraag

Ik moet lijsten. Lijst 1 is als volgt


Called- Rekening:
98798798797
13123123123
13123123123
12423123127

Table 2 is als volgt: />12 de Groep 4

What de Groep 5
124 van A
131 de Groep van B

Code GroupName
98/>1 die ik heb willen om doen uitgezocht ben een code van lijst 2 b.v., codeer 12 en werk dan alle verslagen in lijst A met aantallen bij die met 12 beginnen A. te groeperen. Het zelfde voor alle andere codes. Tevreden help.

Antwoord : SQL de Code van de Vraag

Het interessante vraag… probleem ligt met het berekenen hoe te om de meest specifieke code aan het aantal aan te passen. Mijn mechanisme gebruikt de lengte van de Prefix van het Landnummer helpen meest aangewezen berekenen. Merk op dat ik net uw verstrekte gegevens heb genomen en snel tot één of andere CTEs uit het gemaakt. Om u enkel te tonen hoe UITGEZOCHT… zou werken

MET CalledNumbers ZOALS (
      SELECTEER „98798798797“ ALS Rekening
      DE UNIE SELECTEERT „19123123123“ --Ik heb deze waarde van uw originele post veranderd
      DE UNIE SELECTEERT „13123123123“
      DE UNIE SELECTEERT „12423123127“      
), AreaCodes ZOALS (
      SELECTEER „12“ AANGEZIEN de Prefix, „“ ALS GroupName groepeert
      De UNIE SELECTEERT „98“, „Groep B“
      De UNIE SELECTEERT „1“, „groepeer A“
      De UNIE SELECTEERT „131“, „groepeer 5“
      De UNIE SELECTEERT „124“, „groepeer 4“
)
SELECTEER CalledNumbers.*, AreaCodes.*
VAN CalledNumbers
      LINKER BUITEN SLUIT zich aan bij AreaCodes OP CalledNumbers.Account ALS AreaCodes.Prefix + „%“
WAAR LEN (AreaCodes.Prefix) = (UITGEZOCHTE MAXIMUM (LEN (Prefix)) VAN AreaCodes WAAR CalledNumbers.Account ALS AreaCodes.Prefix + „%“)

En om uw update zonodig te doen:

UPDATE VASTGESTELDE CalledNumbers CalledNumbers.GroupName = AreaCodes.GroupName VAN
CalledNumbers
      LINKER BUITEN SLUIT zich aan bij AreaCodes OP CalledNumbers.Account ALS AreaCodes.Prefix + „%“
WAAR LEN (AreaCodes.Prefix) = (UITGEZOCHTE MAXIMUM (LEN (Prefix)) VAN AreaCodes WAAR CalledNumbers.Account ALS AreaCodes.Prefix + „%“)
Andere oplossingen  
 
programming4us programming4us