# autonumberhash256 Scriptfunctie

Deze scriptfunctie berekent een 256-bits hash van de gecombineerde invoerwaarden van de uitdrukking en retourneert een uniek geheel getal voor elke distinctieve hash-waarde die wordt gevonden tijdens de uitvoering van het script. Met deze functie kan bijvoorbeeld een compacte geheugenrepresentatie van een complexe sleutel worden gemaakt.

InformatieU kunt alleen verbinding maken met autonumberhash256-sleutels die zijn gegenereerd in dezelfde laadbewerking voor gegevens, aangezien het gehele getal wordt gegenereerd op basis van de volgorde waarin de tabel wordt gelezen. Als u sleutels moet gebruiken die ongewijzigd blijven tussen laadbewerkingen voor gegevens, onafhankelijk van de sortering van de brongegevens, moet u de functie hash128, hash160 of hash256 gebruiken.

Syntaxis:

autonumberhash256(expression {, expression})

Voorbeeld: Een samengestelde sleutel maken

In dit voorbeeld maken we een samengestelde sleutel met de functie autonumberhash256 om geheugen te sparen. Het voorbeeld is kort vanwege demonstratiedoeleinden, maar zou relevant zijn bij een tabel met een groot aantal rijen.

Voorbeeldtabel

| Region | Year | Month | Sales |
| --- | --- | --- | --- |
| North | 2014 | May | 245 |
| North | 2014 | May | 347 |
| North | 2014 | June | 127 |
| South | 2014 | June | 645 |
| South | 2013 | May | 367 |
| South | 2013 | May | 221 |

De brongegevens worden geladen met behulp van inline-gegevens. Vervolgens voegen we een voorafgaande load-opdracht toe die een samengestelde sleutel maakt op basis van de velden Region, Year en Month.

```
RegionSales:
LOAD *,
AutoNumberHash256(Region, Year, Month) as RYMkey;

LOAD * INLINE
[ Region, Year, Month, Sales
North,	2014,	May,	245
North,	2014,	May,	347
North,	2014,	June,	127
South,	2014,	June,	645
South,	2013,	May, 367
South,	2013,	May,	221
];
```

De resulterende tabel ziet er als volgt uit:

Resultatentabel

| Region | Year | Month | Sales | RYMkey |
| --- | --- | --- | --- | --- |
| North | 2014 | May | 245 | 1 |
| North | 2014 | May | 347 | 1 |
| North | 2014 | June | 127 | 2 |
| South | 2014 | June | 645 | 3 |
| South | 2013 | May | 367 | 4 |
| South | 2013 | May | 221 | 4 |

In dit voorbeeld kunt u verwijzen naar de RYMkey, bijvoorbeeld 1, in plaats van de tekenreeks 'North2014May' als u een koppeling met een andere tabel tot stand moet brengen.

Nu laden we op vergelijkbare wijze een brontabel met kosten. De velden Region, Year en Month zijn uitgesloten in de voorafgaande laadbewerking om te voorkomen dat er een synthetische sleutel wordt gemaakt. We maken al een samengestelde sleutel met de functie autonumberhash256, waardoor de tabellen worden gekoppeld.

```
RegionCosts:
LOAD Costs,
AutoNumberHash256(Region, Year, Month) as RYMkey;

LOAD * INLINE
[ Region, Year, Month, Costs
South,	2013,	May,	167
North,	2014,	May,	56
North,	2014,	June,	199
South,	2014,	June,	64
South,	2013,	May, 172
South,	2013,	May,	126
];
```

Nu kunnen we een tabelvisualisatie toevoegen aan een werkblad en de velden Region, Year en Month toevoegen, alsmede metingen Som voor de verkopen en kosten. De tabel ziet er dan als volgt uit:

Resultatentabel

| Region | Year | Month | Sum([Sales]) | Sum([Costs]) |
| --- | --- | --- | --- | --- |
| Totals | - | - | 1952 | 784 |
| North | 2014 | June | 127 | 199 |
| North | 2014 | May | 592 | 56 |
| South | 2014 | June | 645 | 64 |
| South | 2013 | May | 588 | 465 |

## Meer informatie

* [autonumberhash128 Scriptfunctie](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/CounterFunctions/autonumberhash128.htm)
* [autonumber Scriptfunctie](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/CounterFunctions/autonumber.htm)