0
votes

Entrée non valide 'R': attendu 'T / T'

Obtenir l'erreur suivante:

Neo.clienterror.statement.SyntaxError: entrée non valide 'R': attendu 'T / T' (ligne 4, colonne 9 (décalage: 116)) "Somme (si SR.WScore> Sr.lscore puis 1 autre 0) comme gagne "

est ma logique droite ???? xxx


4 commentaires

Avez-vous des relations ou simplement des nœuds?


Ses nœuds correspondent (T: équipes), (SR: saisonnières) où sr.weteamid = t.eamid et t.teamname = "Alabama" Nombre de retours (WINS), Somme (cas lorsque Sr.WScore> Sr.lscore puis 1 autre 0 fin) comme gagne, j'ai eu une erreur disant que la variable gagne est indéfinie


On dirait que wscore dans saisonniersults est un score de l'équipe gagnante. Si c'est correct, il sera toujours plus grand que lscore , et nous n'avons pas besoin de comparer WScore> lscore . Idem pour wteaueamid , est IT Winner Team ID?


Ouais fondamentalement le score est le score de l'équipe gagnante, mon idée était de comparer le score avec le score si sa valeur supérieure à une valeur 1 sera attribuée à une nouvelle variable "gagne" puis comptez le nombre de victoires.


3 Réponses :


0
votes

Utiliser case non si xxx


1 commentaires

Ok oui, je suis arrivé à Kow sur la déclaration de cas maintenant, merci, match (T: équipes), (SR: saisonnières) où sr.wteamid = t.eamid et t.teamname = "Alabama" Retour Note (WINS), Somme (Cas lorsque SR.WScore> sr.lscore puis 1 autre 0 extrémité) comme gagne lorsque j'ai essayé d'exécuter la pièce de code ci-dessus, j'ai eu une erreur "variable non définie". Je ne peux pas stocker les résultats de la somme dans la variable gagne et afficher le résultat. Je suis capable de le faire dans SQL, mais dans CQL, je ne suis pas sûr, je suis nouveau à Neo4j. L'aide sera appréciée!



0
votes

A avec ou Retour La clause ne peut pas tous les deux Attribuer à une variable (comme gagne ) et Utilisez la même variable. Donc, une clause comme le nombre de retours (gains), la somme (...) comme gagne n'est pas prise en charge.

Toutefois, si votre cas d'utilisation est juste pour compter le nombre de fois dans lequel a lié saisonnières nœud avait wscore> lscore , vous n'avez pas besoin d'utiliser compter () , et cela devrait suffire: xxx


0 commentaires

0
votes

Je pense que si vous prenez le nombre de saisonnières code> où sr.weteamid = t.teamid code> vous donnera le nombre de victoires requis.

Je suppose wteamid code> est l'identifiant de l'équipe gagnante, de sorte que lorsque l'identifiant de cette équipe est égal à wteamid code> de saisonniersults code> implique de gagner pour gagner cette équipe. Et le nombre de tous ces saisonnières code> sera totalement gagné pour cette équipe. P>

Vous pouvez structurer la requête pour la même chose que: strong> p >

MATCH (t:Teams)
WHERE t.TeamName="x"
WITH t
MATCH (sr:SeasonResults)
WHERE sr.WTeamID=t.TeamID
RETURN count(sr) AS wins


0 commentaires