#!/usr/bin/perl -w use warnings; use strict; use DBD::SQLite; $DBD::SQLite::COLLATION{no_accents} = sub { my ( $a, $b ) = map lc, @_; tr[ÀÁÂÃÄÅàáâãäåÇçÈÉÊËèéêëÌÍÎÏìíîïÒÓÔÕÖØòóôõöøÑñÙÚÛÜùúûüÝÿý] [AAAAAAaaaaaaCcEEEEeeeeIIIIiiiiOOOOOOooooooNnUUUUuuuuYyy] for $a, $b; $a cmp $b; }; my $dbh = DBI->connect("dbi:SQLite:data.db"); my $sql = ("SELECT ID, one, two FROM table WHERE one = 'value' ORDER BY one COLLATE no_accents"); my $rows = $dbh->selectall_arrayref($sql); foreach my $row_db (@$rows ) { my ($ID, $one, $two) = @$row_db; print "$one\n"; }