Tous les produits
Search
Centre de documentation

Tablestore:read a single row of data

Dernière mise à jour :Aug 19, 2026

Utilisez le SDK PHP pour lire une seule ligne de données d'une table Tablestore en spécifiant sa clé primaire.

Remarques

Lors de la lecture des données, fournissez la valeur complète de la clé primaire, y compris la valeur de la colonne de clé primaire à incrémentation automatique.

Avant de commencer

Initialiser le client Tablestore

Description de la méthode

public function getRow(array $request)

Description du paramètre $request

Nom

Type

Description

table_name (Obligatoire)

string

Nom de la table de données.

primary_key (Obligatoire)

array

Clé primaire de la ligne, incluant les noms et les valeurs des colonnes.

  • Types de données pris en charge pour les colonnes de clé primaire : STRING, INTEGER et BINARY.

  • Le nombre et les types de colonnes de clé primaire doivent correspondre à ceux définis dans la table de données.

max_versions (Facultatif)

int

Nombre maximal de versions à renvoyer.

  • Définissez max_versions ou time_range.

  • Si le nombre de versions correspondantes dépasse cette valeur, les versions sont renvoyées de la plus récente à la plus ancienne, jusqu'à la limite spécifiée.

time_range (Facultatif)

array

Plage de versions des données à lire.

  • Définissez max_versions ou time_range.

  • Chaque colonne d'attribut peut contenir plusieurs versions. Seules les versions comprises dans la plage spécifiée sont renvoyées.

columns_to_get (Facultatif)

array

Colonnes à lire. Vous pouvez spécifier à la fois les colonnes de clé primaire et les colonnes d'attribut.

  • Si ce paramètre n'est pas défini, la ligne entière est renvoyée.

  • S'il est défini mais que la ligne ne contient aucune des colonnes spécifiées, la valeur null est renvoyée.

column_filter (Facultatif)

array

Condition de filtre à appliquer. Pour plus d'informations, consultez Filtre.

  • Si columns_to_get et column_filter sont tous deux définis, Tablestore récupère d'abord les colonnes spécifiées, puis applique le filtre aux résultats.

transaction_id (Facultatif)

string

ID de la transaction locale. Pour plus d'informations, consultez Transactions locales.

Exemple de code

L'exemple suivant lit une ligne dont la valeur de clé primaire est row1.

$request = array (
    'table_name' => 'test_table',
    // Construct primary key
    'primary_key' => array (
        array ('id', 'row1')
    ),
    'max_versions' => 1
);

try {
    // Call the getRow method to read row data
    $response = $client->getRow ($request);
    echo "* Read CU Cost: " . $response['consumed']['capacity_unit']['read'] . "\n";
    echo "* Write CU Cost: " . $response['consumed']['capacity_unit']['write'] . "\n";
    echo "* Row Data: " . "\n";
    echo "Primary Key: ". json_encode($response['primary_key']) . "\n";
    echo "Attribute Columns: ". json_encode($response['attribute_columns']) . "\n";
} catch (Exception $e){
    echo "Get Row failed.";
}
  • Définissez une plage de versions pour renvoyer uniquement les données comprises dans cette plage.

    // Set the query data version range to one day before the current time
    $request['time_range'] = array (
        'start_time' => intval(microtime(true) * 1000) - 86400 * 1000,
        'end_time' => intval(microtime(true) * 1000)
    );
  • Spécifiez les colonnes d'attribut à lire.

    $request['columns_to_get'] = array('col2');

Références