casting σε sql server 2005
- Swtos
- Kilobyte level
- Posts: 309
- Joined: Mon Apr 18, 2005 4:52 pm
- Academic status: MSc
- Gender: ♂
- Location: Δ.Π
casting σε sql server 2005
Καλησπέρα!
Έχω ένα πρόβλημα με τη μετατροπή ακεραίων σε δεκαδικούς αριθμούς. Χρησιμοποιώ τις ενολές CAST & CONVERT αλλα τιποτα!
π.χ το CAST(5/6 AS DECIMAL) εχει αποτελεσμα 0. Δοκιμασα αντι για decimal και τα float & real αλλα παλι τπτ. Φαντάζομαι θα είναι κατι απλό αλλα προς το παρον δεν εχω βρει λύση...εχει κανεις καμια ιδέα? Ευχαριστω!
Έχω ένα πρόβλημα με τη μετατροπή ακεραίων σε δεκαδικούς αριθμούς. Χρησιμοποιώ τις ενολές CAST & CONVERT αλλα τιποτα!
π.χ το CAST(5/6 AS DECIMAL) εχει αποτελεσμα 0. Δοκιμασα αντι για decimal και τα float & real αλλα παλι τπτ. Φαντάζομαι θα είναι κατι απλό αλλα προς το παρον δεν εχω βρει λύση...εχει κανεις καμια ιδέα? Ευχαριστω!
-My father made him an offer he couldnt refuse
-What was that?
-Luca Brasi held a gun to his head and my father assured him that either his brain or his signature would be on the contract
-The Godfather
-What was that?
-Luca Brasi held a gun to his head and my father assured him that either his brain or his signature would be on the contract
-The Godfather
Από τη στιγμή που διαιρείς int / int, το αποτέλεσμα θα είναι int.
Χρειάζεσαι κάτι της μορφής
Χρειάζεσαι κάτι της μορφής
Code: Select all
CAST(5 AS DECIMAL) / CAST(6 AS DECIMAL)
It is by will alone I set my mind in motion...
- Swtos
- Kilobyte level
- Posts: 309
- Joined: Mon Apr 18, 2005 4:52 pm
- Academic status: MSc
- Gender: ♂
- Location: Δ.Π
Το εχω δοκιμασει και αυτο, ακολουθώντας αυτα που λεει και το λινκ που εδωσε ο Ρ3...nap wrote:Από τη στιγμή που διαιρείς int / int, το αποτέλεσμα θα είναι int.
Χρειάζεσαι κάτι της μορφήςCode: Select all
CAST(5 AS DECIMAL) / CAST(6 AS DECIMAL)
Αυτό που δεν καταλαβαίνω είναι το εξής: Όταν κανω:
Code: Select all
print CAST(5 AS DECIMAL) / CAST(6 AS DECIMAL)
Όταν όμως κανω, στα πλαίσια ενος UPDATE:
Code: Select all
SET rc = CAST(5 AS DECIMAL) / CAST(6 AS DECIMAL)
Anyway, ευχαριστώ για τη βοηθεια
-My father made him an offer he couldnt refuse
-What was that?
-Luca Brasi held a gun to his head and my father assured him that either his brain or his signature would be on the contract
-The Godfather
-What was that?
-Luca Brasi held a gun to his head and my father assured him that either his brain or his signature would be on the contract
-The Godfather
- Sreak
- Venus Project Founder
- Posts: 956
- Joined: Fri Apr 02, 2004 9:56 am
- Academic status: PhD
- Location: eltrun.gr
SET rc = CAST( (CAST(5 AS DECIMAL) / CAST(6 AS DECIMAL)) AS DECIMAL)Swtos wrote:
Όταν όμως κανω, στα πλαίσια ενος UPDATE:όπου rc είναι η στήλη ενός πίνακα, δηλωμένη ως DECIMAL τυπώνει 1, στρογγυλοποιεί δλδ το 0.83333 προς τα πανω...Code: Select all
SET rc = CAST(5 AS DECIMAL) / CAST(6 AS DECIMAL)
Anyway, ευχαριστώ για τη βοηθεια
- Swtos
- Kilobyte level
- Posts: 309
- Joined: Mon Apr 18, 2005 4:52 pm
- Academic status: MSc
- Gender: ♂
- Location: Δ.Π
Δεν έπαιξε ούτε με αυτό που γραφει ο ο Sreak...
Τελικά αλλαξα τη στήλη rc από DECIMAL σε FLOAT και όλα τα σχετικά καλουπώματα που γραφτηκαν παραπάνω και έπαιξε...ειλικρινα δεν μπορω να καταλαβω τι ρολο παιζει ο τύπος decimal...
Ευχαριστω για την ανταποκριση
Τελικά αλλαξα τη στήλη rc από DECIMAL σε FLOAT και όλα τα σχετικά καλουπώματα που γραφτηκαν παραπάνω και έπαιξε...ειλικρινα δεν μπορω να καταλαβω τι ρολο παιζει ο τύπος decimal...
Ευχαριστω για την ανταποκριση
-My father made him an offer he couldnt refuse
-What was that?
-Luca Brasi held a gun to his head and my father assured him that either his brain or his signature would be on the contract
-The Godfather
-What was that?
-Luca Brasi held a gun to his head and my father assured him that either his brain or his signature would be on the contract
-The Godfather