Bonjour ,
je trie les photos éparpillées sur mon disque dur , et les ai rassemblées en une table contenant entre autres une rubrique 'données EXIF brutes ' et une rubrique 'Taille du fichier'.
Les autres données sont le chemin sur le disque et la date de modification
Je pars du principe que deux clichés partageant la même chaine exif et la même taille sont des doublons .
Je souhaite à l'arrivée obtenir dans une table ou une requête une liste ordonnée des clichés probablement doublonnés . Cette liste doit aussi contenir les autres rubriques ( le chemin sur le disque par exemple )
Je suis parvenu à isoler l'aide de ces instructionà extraire les valeurs qui sont doublonnées en taille + donnée exif , mais elles seules , je ne peux pas extraire ou je n'ai pas trouvé de syntaxe pour sortir soit les chemins soit les id des lignes concernées .
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT CONCAT(Collectiondephotos.PhotoTaille,'_',Collectiondephotos.PhotoExif) AS valeur, COUNT(*) AS nombre_de_repetition FROM Collectiondephotos WHERE Collectiondephotos.PhotoExif <>'' GROUP BY valeur HAVING nombre_de_repetition > 1
je passe donc par une laborieuse boucle en windev qui lit les lignes , recherche ces valeurs dans la table d'origine et recopie ces données dans une autre table
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 POUR TOUT REQ // traitement de chaque enregistrement renvoyé par la requete. sResult=HRécupèreEnregistrement(REQ) sTaille = ExtraitChaîne (sResult,1,["_",TAB],DepuisDébut) sExif = ExtraitChaîne (sResult,2,["_",TAB],DepuisDébut) nlignes=ExtraitChaîne (sResult,3,["_",TAB],DepuisDébut) sResult = [ INSERT INTO Collectiondedoublons SELECT * FROM Collectiondephotos WHERE collectiondephotos.PhotoTaille = '%1' AND collectiondephotos.PhotoExif = '%2'; ] sResult = ChaîneConstruit(sResult,sTaille,sExif) bB = HExécuteRequêteSQL(REQ2,hRequêteDéfaut,sResult)
C'est malheureusement assez lent ....:-/
ET d'autre part cette procédure ne regroupe pas les clichés par groupes de doublons donc ne me convient pas tout à fait ( le but final est de les défiler ensuite séquentiellement dans une fenêtre de visualisation )
j'aurais aimé rester dans le SQL , peut être aussi pour la beauté du geste .
Je ne parviens pas à trouver de solution , d'où mon appel au secours en espérant que vous saurez m'orienter ou me fournir une solution :-)
D'avance merci pour les conseils qui pourraient m'être prodigués
TC
Partager