Bonjour,

J'ai une table où ma clé (book) peut avoir jusqu'à 6 Digits, mais que le maximum permis est 5.
En faisant un substr , on peut tomber sur des doublons dont il faut éliminer celui qui a plus de 5 digits.
Aussi, il y a ceux qui sont a 6 digits dont le seul besoin est de le tronquer à 5 digits.

exp:

01455
01455w
47815w
4201

Ici, je dois supprimer le 01455w

J'ai essayé cette requête mais ça me redonne le même nombre de lignes que matable initiale.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
SELECT corp.* FROM  matable t
join (
select substr(book, 1, 5) as subb, min(length(book))
FROM matable
group by substr(book, 1, 5)
) subtab
 on substr(t.book, 1, 5) = subtab.subb;

Avez vous une idée comment l'améliorer (c'est un peu urgent)?

Merci