Ruche - Impossible de comparer deux colonnes de date dans la même table

voix
0

Je suis en train de comparer deux colonnes de chaîne qui a une valeur de date en elle.

Ci-dessous un ensemble de données exemple

id start_dt   end_dt
1  2019-10-10 2019-10-10
2  2019-10-20 2020-01-01
3  2019-01-01 2020-01-01

Je veux éliminer les enregistrements où start_dt et end_dt sont égaux. J'ai essayé toutes les inégalités ci-dessous

sélectionner * de test où to_date (start_dt) <> to_date (end_dt) sélectionner * de test où to_date (FROM_UNIXTIME (from_unixtimestamp (start_dt, 'aaaa-mm-jj'))) <> to_date (FROM_UNIXTIME (from_unixtimestamp (end_dt, «aaaa -MM-dD ')))

Mais aucun d'entre eux travaillaient pour l'inégalité où le même travaillerait sur l'égalité.

Production attendue

id start_dt   end_dt
2  2019-10-20 2020-01-01
3  2019-01-01 2020-01-01

Toute aide serait très appréciée

Créé 13/02/2020 à 23:59
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
0

Comme vous avez le type de chaîne pour les start_dt, end_dtcolonnes et nous pouvons directement jeter à date type(yyyy-MM-dd)et obtenir uniquement les lignes non assorties!

Essayez cette requête:

select * from test where date(start_dt) <> date(end_dt);

Nous sommes simplement coulée à date typeet la comparaison dans la clause WHERE.

Créé 14/02/2020 à 00:22
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more