Ein wenig mehr Informationen zu Ihrem Plattenlayout würden Ihnen helfen, Ihnen zu helfen. Wenn Ihre Unterlagen ID-Nummern verbunden sind, dann können Sie einen Hash mit dem ‚id‘ als Schlüssel verwenden, und speichern Sie die Aufzeichnung als String oder ein Array Referenz als Hash-Wert
my %records;
$records{ $id_number } = "Record for $id_number";
## OR
$records{ $id_number } = ['Record', 'for', $id_number];
Dies ermöglicht es Ihnen zum Nachschlagen IDs mit Komplexität O (1) und leicht manipulieren den entsprechenden Datensatz.
# Assuming the records are stored in @records
for my $record (@records) {
$recStore{$record}++;
}
# To search for a record
my $recToFind = 4343;
my $recExists = $recStore{$recToFind} || 0;
Die Schlüssel des Hash sind der von id aus der Datenbank abgerufen und die entsprechenden Werte sind die Anzahl, wie oft die ID gefunden, so dass für Aufzeichnungen Wiederholung $ recExists als 1 größer sein wird, und für nicht existent records es wird gleich 0 sein. Um eine Liste aller IDs numerisch sortiert zu erhalten, könnten Sie schreiben
my @sortedID = sort {$a <=> $b} keys %records;
Es ist nicht klar, was Sie tun möchten. Sie möchten vielleicht beschreiben, welche Art von Daten Sie speichern möchten und wie Sie darauf zugreifen möchten. – hillu
Ich habe 10000 Datensätze und speichern in einer Datenstruktur und wollen diese Datensätze suchen – joe
Ich habe IDs und reterive von d-Datenbank und speichern Sie in einem Daten strtrucure und suchen Sie einige der Datensätze – joe