Adapter une requête MySQL en PostgreSQL

ayoub36_ah Messages postés 10 Statut Membre -  
ayoub36_ah Messages postés 10 Statut Membre -
Bonjour,

Mon besoin est d'adapter la requête SQL ci-dessous pour qu'elle fonctionne en Postgresql sachant qu'elle fonctionne bien en Mysql :

delete from test where date_MAJ not in 
(select * from (select min(date_MAJ) from test group by DATE_FORMAT(date_MAJ, "%Y/%m")) as t)


Merci

4 réponses

jordane45 Messages postés 40050 Statut Modérateur 4 755
 
Bonjour,

L'as tu testée sur postgre ?
As tu une erreur ? si oui, laquelle ?
Qu'as tu essayé de faire pour l'adapter ? A moins que tu attendes qu'on fasse le travail à ta place ?

0
ayoub36_ah Messages postés 10 Statut Membre
 
Bonjour,

j'ai déjà fais le test, le problème que j'ai c'est au niveau de la fonction date_format, il n'arrive pas à connaitre cette fonction.
0
jordane45 Messages postés 40050 Statut Modérateur 4 755
 
Une bonne technique quand on coince sur une fonction... https://www.google.com/search?q=date_format+postgresql
0
ayoub36_ah Messages postés 10 Statut Membre
 
J'ai fait mes recherches, et j'ai changé date_format par to_char:

select * from conso where 'Extract Date' not in (select * from( select min( 'Extract Date') from conso group by to_char('Extract Date', 'yyyy-mm-dd')) as t)

et j'ai eu cette erreur:

Error: ERROR: function to_char(unknown, unknown) is not unique

Indice : Could not choose a best candidate function. You might need to add explicit type casts.

Position : 113

SQLState: 42725

ErrorCode: 0
0
jordane45 Messages postés 40050 Statut Modérateur 4 755
 
Bonjour,
c'est une très mauvaise habitude d'avoir des nom de table ou de champs avec des espaces... je serais toi, je commencerai par renommer ces champs en remplaçant les espaces par des underscore ou en utilisation le camelCase
0
ayoub36_ah Messages postés 10 Statut Membre
 
Oui je sais, mais je ne peux pas faire cette modification C'est une grande base de données d'une société, donc je ne peux pas faire cette modification.
0