Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλημέρα παιδία!
Θα ήθελα να ρωτήσω πάνω σε
C# στο Visual Studio 2010 + MySQL.
Έχω καταχωρήσει κάποια προϊόντα σε έναν πίνακα και ένα από τα στοιχεία του πίνακα είναι και η ημερομηνία (όνομα
date).
Η SQL αποθηκεύει σε μορφή (έτος/μήνας/ημέρα).
Στο πρόγραμμα έχω περάσει
DateTimePicker με μορφή dd/MM/yyyy (ημέρα/μήνας/έτος).
Θέλω να τραβήξω την πληροφορία την πώλησης ανά ημερομηνία και κάνω αυτό:

SELECT * FROM table WHERE (date_format(date, ‘%d/%m/%Y’) BETWEEN ‘” + this.DateTimePicker1.Text + ”’ AND ‘” + this.DateTimePicker2.Text + ”)

Μέσα πχ έχω:
2016-10-1
2016-10-5
2016-10-10
2016-09-20
2016-08-8

Το πρόβλημα μου είναι ότι παίρνω τα αποτελέσματα αλλά…
Αν κάνω αναζήτηση μεταξύ 1-10-2016 & 5-10-2016 όλα καλά
αλλά αν κάνω μεταξύ 1-10-2016 & 10-10-2016 θα μου περάσει μέσα και το 2016-08-8 (8-10-2016) που είναι εντελώς άλλος μήνας.
Σαν να μου αγνοεί τον μήνα και να κάνει αναζήτηση μόνο μέσο ημέρας…
Αν στο
DateTimePicker του έχω μορφή yyyy/MM/dd δηλαδή πάω με τα νερά της SQL όλα καλά.
Αλλά είναι λίγο κουραστικό να βλέπω πρώτα το έτος και μετά τα άλλα..
Αυτά!
Ξέρει κανείς γιατί το κάνει αυτό?

Δημοσ.

Αντί για DateTimePicker.Text βάλε DateTimePicker.Value.ToString("yyyy-MM-dd").

 

Στο where σου γιατί χρησιμοποιείς την date_format; Λογικά με την παραπάνω αλλαγή δεν είναι απαραίτητο.

 

Keep in mind, όταν λες π.χ. BETWEEN '2016-10-18' AND '2016-10-19', σε SQL μεριά θεωρεί πως εννοείς '2016-10-18 00:00' και '2016-10-19 00:00'

Δημοσ.

Σε ευχαριστώ για τον χρόνο σου!
Δοκίμασα αυτό που μου είπες και δεν έπιασε…

 

 

Είχα βάλει date_format γιατί ή mysql αποθηκεύει με την σειρά (έτος/μήνας/μέρα)
αλλά εγώ στην μορφοποίηση του αντικειμένου έχω (μέρα/μήνας/έτος) και έτσι όταν έκανα select μου έβγαζε αποτέλεσμα 0.
Γι αυτό το έβαλα το date_format γιατί παίρνει την μορφοποίηση μου και την κάνει όπως την έχει η mysql, αλλά και πάλι είχα το θέμα που ανέφερα πιο πάνω…

Δεν κατάφερα να βγάλω άκρη και έτσι το έκανα με χωριάτικο τρόπο μέσο ανταρκτικής.

Άφησα την μορφοποίηση όπως ήθελα εγώ και όταν πατούσα το κουμπί για κάποιο query αυτό στο background του την μετέτρεπε σε μορφοποίησης mysql και όταν μου εμφάνιζε το ερώτημα το ξανά έκανε μετέτρεπε στην αρχική του κατάσταση…

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...