La requête que je commence avec des lignes a 40.000 de lignes vides, qui provient d'un problème avec la feuille de calcul d'origine à partir de laquelle elle a été prise.Coldfusion requêtes des requêtes avec des chaînes vides
Utilisation d'un serveur CF16
Je voudrais faire une requête de requêtes sur un nom variablement "colonne de clé.
Dans ma requête:
var keyColumn = "Permit No."
var newQuery = "select * from source where (cast('#keyColumn#' as varchar) <> '')";
Note: le casting vient de this suggestion
Je reçois encore tous ces champs vides là-dedans.
Mais quand je l'utilise « Ville » comme KeyColumn, cela fonctionne. Comment les valeurs de ces deux colonnes diffèrent-elles lorsqu'elles disent toutes deux [chaîne vide] dans le vidage de la requête?
Est-ce un problème avec les noms de colonnes? Quel genre de données sont dans ces cellules?
Toute différence si vous essayez 'where col is NOT NULL'? * Quel genre de données sont dans ces cellules * Dump et découvrir. Quelque chose comme 'writeDump (yourQuery.columnName [rowNum] .getClass(). Nom)'. Peut également vérifier les longueurs de valeur pour voir si c'est vraiment une chaîne vide. – Leigh
@Leigh 'java.lang.String' dans une cellule comme 23 avec' [chaîne vide] '. 'n'est pas nul' check' n'a rien changé. Merci d'avoir signalé la fonction getClass –
(Edit) Mis à part la vérification de la valeur, la longueur est 0, êtes-vous sûr que le SQL est valide? Raison pour demander est que je ne me souviens pas si c'est la bonne façon d'échapper aux noms de colonnes invalides dans un QoQ, au sommet de ma tête. – Leigh