philos Δημοσ. 28 Δεκεμβρίου 2022 Share Δημοσ. 28 Δεκεμβρίου 2022 (επεξεργασμένο) Έχουμε έναν πίνακα table με τα εξής columns days1 (int) days2 (int) date (unix timestamp) Ας πούμε ότι μια γραμμή μπορεί να έχει τις εξής τιμές: days1 = 3 days2 = 5 date = 1669627713 (Nov 28 2022 09:28:33) Θέλω να εντοπίσω τις γραμμές που έχουν λήξει, που λήξει σημαίνει ότι το άθροισμα days1 + days2 έχει ξεπεράσει την ημερομηνία του date σε σχέση με το NOW()/ time() στην php. Δε ξέρω πως αλλιώς να το εξηγήσω, αλλά ας πούμε για την παραπάνω γραμμή, έχει λήξει αφού η σημερινή ημερομηνία Dec 28 είναι 30 μέρες μετά την date (η οποία είναι Nov 28), ενώ το άθροισμα είναι 5 + 3 = 8. Αφού 30 > 8 τότε θεωρείται ληγμένη γραμμή και θέλω να την εντοπίσω. Καμιά ιδέα για τη σύνταξη της WHERE; Επεξ/σία 28 Δεκεμβρίου 2022 από philos Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Moderators Kercyn Δημοσ. 28 Δεκεμβρίου 2022 Moderators Share Δημοσ. 28 Δεκεμβρίου 2022 Δε θα μπορούσες να κάνεις κάτι τέτοιο (στο περίπου, δεν το δοκίμασα); SELECT field1, field2 FROM table WHERE (date + ((days1 + days2) * 86400)) < UNIX_TIMESTAMP(NOW()) Ρίξε επιπλέον και μια ματιά εδώ. EDIT: Εναλλακτικά υπάρχει και η DATEDIFF. 2 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
k33theod Δημοσ. 28 Δεκεμβρίου 2022 Share Δημοσ. 28 Δεκεμβρίου 2022 Μάλλον WHERE TIMESTAMPDIFF(DAY, date, current_timestamp) > days1 + days2; To DAY λέει απλά να δώσει τη διαφορά σε μέρες Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Floral12 Δημοσ. 4 Ιανουαρίου 2023 Share Δημοσ. 4 Ιανουαρίου 2023 WHERE unix_timestamp(NOW()) > unix_timestamp(date) + (days1 + days2) * 86400; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα