That's because you're using the .data property with $hget(). $hget().data exists, but you don't want that: $hget().data works by index, ie
$hget(tablename,N).data => returns the data of the Nth value
if N is 0 or non-numeric, $hget().data returns the total number of items in the table. That's what the "426" you get really is.
Just remove the .data from $hget(), ie use something like
echo -a $hget(filelist,$hfind(filelist,* $+ %lsearch $+ *,%hfound,w).data)