2010-09-20 6 views
0

J'ai une colonne (varchar dans mysql et un caractère variant dans postgresql). J'ai besoin d'appliquer sum sur la colonne et j'ai besoin d'une syntaxe de cast qui fonctionne pour les deux.Mysql Postgresql cast

La structure db est ancienne et possède des valeurs int et varchar. Je ne peux pas changer ça.

+0

Regardez dans les expressions régulières dans PostgreSQL. –

Répondre

1

Pourquoi utilisez-vous un VARCHAR? Vous ne pouvez pas SOMME une pomme et une poire, ça ne va pas marcher. Vous pouvez utiliser CAST() pour lancer, mais cela échouera sur PostgreSQL (et tout autre SGBD) lorsque des données non valides sont détectées.

SELECT 
    CAST('1' AS int); 

Cela échouera:

SELECT 
    CAST('apple' AS int); 

Utilisez les types de données correctes.