![]() |
SQL ερώτημα Καλημέρα στο φορουμ. Έχω βάλει τον sql server expres 2012 . Το πρόβλημα που αντιμετωπίζω είναι το εξής. Σε αυτό το query μου χχτυπάει ο κώδικας μπορεί κάποιος να βοηθήσει? κώδικας (SELECT * (Select count(*) From dbo.Result$ as P Where home=P.home and iif( home=P.home,hmna<=.p.hmna,hmna<P.hmna)) AS Katataxi FROM dbo.Result$ ORDER BY RESULT.HOME, RESULT.HMNA DESC και μήνυμα (Msg 102, Level 15, State 1, Line 1 Incorrect syntax near '<'.) |
Καλησπέρα Δεν γνωρίζω ποιά είναι η απάντηση στο ερώτημά σου. Όμως σε αυτές τις περιπτώσεις εργάζομαι αποδομώντας την πολυπλοκότητα της SQL δομής και στην συνέχεια βήμα-βήμα την φέρνω μέχρι την επιθυμητή μορφή. πχ SELECT * (Select count(*) From dbo.Result$ as P Where home=P.home) AS Katataxi FROM dbo.Result$ ORDER BY RESULT.HOME, RESULT.HMNA DESC μετά... SELECT * (Select count(*) From dbo.Result$ as P Where home=P.home and hmna<P.hmna) AS Katataxi FROM dbo.Result$ ORDER BY RESULT.HOME, RESULT.HMNA DESC κοκ Καλή συνέχεια Νίκος Δ. Υστερολόγιο : Μέτρησε τις παρενθέσεις,... |
Καλησπέρα! Δημήτρη, η συνάρτηση iif(home=P.home,hmna<=.p.hmna,hmna<P.hmna) επιστρέφει True ή False. Επομένως, ακόμα και αν μπορούσε να εκτελεστεί το ερώτημα σου, δεν θα είχες σωστά αποτελέσματα. Πιο απλά, μην περιμένεις να σου επιστρέψει σωστά αποτελέσματα η Select count(*) From dbo.Result$ as P Where home=P.home AND True ή False αφού το True ή False δεν αντιστοιχείται πουθενά . Μετά τον τελεστή AND θα πρέπει να βάλεις τη συνθήκη και όχι το αποτέλεσμα της συνάρτησης IIF() Παράδειγμα: Κώδικας: SELECT Result.hmna, Result.home, (Select count(*) From Result as P Τάσος |
Η ώρα είναι 17:53. |
Ms-Office.gr - ©2000 - 2025, Jelsoft Enterprises Ltd.