Apache Pig - EqualsIgnoreCase ()
le EqualsIgnoreCase()La fonction est utilisée pour comparer deux chaînes et vérifier si elles sont égales. Si les deux sont égaux, cette fonction renvoie la valeur booléennetrue sinon il renvoie la valeur false.
Syntaxe
Ci-dessous la syntaxe de la fonction EqualsIgnoreCase()
grunt> EqualsIgnoreCase(string1, string2)
Exemple
Supposons qu'il existe un fichier nommé emp.txt dans le HDFS annuaire /pig_data/comme indiqué ci-dessous. Ce fichier contient les détails de l'employé tels que l'identifiant, l'âge du nom et la ville.
emp.txt
001,Robin,22,newyork
002,BOB,23,Kolkata
003,Maya,23,Tokyo
004,Sara,25,London
005,David,23,Bhuwaneshwar
006,Maggy,22,Chennai
007,Robert,22,newyork
008,Syam,23,Kolkata
009,Mary,25,Tokyo
010,Saran,25,London
011,Stacy,25,Bhuwaneshwar
012,Kelly,22,Chennai
Et, nous avons chargé ce fichier dans Pig avec une relation nommée emp_data comme indiqué ci-dessous.
grunt> emp_data = LOAD 'hdfs://localhost:9000/pig_data/emp.txt' USING PigStorage(',')
as (id:int, name:chararray, age:int, city:chararray);
Ci-dessous, un exemple de EqualsIgnoreCase()fonction. Dans cet exemple, nous comparons les noms de tous les employés avec la valeur de chaîne‘Robin’.
grunt> equals_data = FOREACH emp_data GENERATE (id,name), EqualsIgnoreCase(name, 'Robin');
L'instruction ci-dessus compare la chaîne “Robin” (insensible à la casse) avec les noms des employés, si la valeur correspond, elle renvoie true sinon ça revient false. En bref, cette instruction recherche l'enregistrement d'employé dont le nom est‘Robin’
Le résultat de l'instruction sera stocké dans la relation nommée equals_data. Vérifier le contenu de la relationequals_data, en utilisant l'opérateur Dump comme indiqué ci-dessous.
grunt> Dump equals_data;
((1,Robin),true)
((2,BOB),false)
((3,Maya),false)
((4,Sara),false)
((5,David),false)
((6,Maggy),false)
((7,Robert),false)
((8,Syam),false)
((9,Mary),false)
((10,Saran),false)
((11,Stacy),false)
((12,Kelly),false)