http://www.perlmonks.org?node_id=981424


in reply to Re: Uniq and sort in perl
in thread Uniq and sort in perl

This is a very valid point, selecting only the fields you are interested in would improve performance as well as being the "correct" way to achieve this

print "Good ",qw(night morning afternoon evening)[(localtime)[2]/6]," fellow monks."

Replies are listed 'Best First'.
Re^3: Uniq and sort in perl
by slayedbylucifer (Scribe) on Jul 12, 2012 at 16:58 UTC
    No. the SQL query is not giving me the duplicate entries. They look duplicate only after I run the "split" function inside my while loop. Thanks for your time.
      The recordset you retrieve indeed will not contain duplicate records, but that is only because you retrieve more fields and data than you use in your final results.

      You do nothing with the second field and you discard all the data after the first ":" delimiter in the third field. And perhaps there are many other fields you do not use at all.

      Try to rewrite your SQL so it only gives you exactly what you need.

      If that is not possible, then perhaps you should revise your database scheme. If you regularly need the dotted quad as a result, then perhaps that should be a separate field (rather than hidden inside another field) so you can index it and increase the retrieval speed many times.

      CountZero

      A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James

      My blog: Imperial Deltronics