Where σε mysql query

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
philos
Δημοσιεύσεις: 260
Εγγραφή: 30 Αύγ 2007 23:32

Where σε mysql query

Δημοσίευση από philos » 25 Δεκ 2013 21:39

Λοιπόν, έχουμε έναν υποθετικό πίνακα με columns contenttypeid και extradata.
Θέλω να συντάξω μια WHERE στο MySQL query που τραβάει τον πίνακα, η οποία:
"Αν το contenttypeid είναι 17 ΚΑΙ το extradata 2, τότε να μην τα επιλέγει το query".

Να σημειωθεί ότι κάποιο άλλο contenttypeid μπορεί να έχει extradata = 2.
Ευχαριστώ :wink:

Άβαταρ μέλους
panxer
Δημοσιεύσεις: 113
Εγγραφή: 26 Ιουν 2011 20:29
Τοποθεσία: Athens, Greece
Επικοινωνία:

Where σε mysql query

Δημοσίευση από panxer » 26 Δεκ 2013 14:50

philos έγραψε:Λοιπόν, έχουμε έναν υποθετικό πίνακα με columns contenttypeid και extradata.
Θέλω να συντάξω μια WHERE στο MySQL query που τραβάει τον πίνακα, η οποία:
"Αν το contenttypeid είναι 17 ΚΑΙ το extradata 2, τότε να μην τα επιλέγει το query".

Να σημειωθεί ότι κάποιο άλλο contenttypeid μπορεί να έχει extradata = 2.
Ευχαριστώ :wink:
SELECT * FROM tbl_name WHERE contenttypeid != 17 AND extradata != 2

Άβαταρ μέλους
philos
Δημοσιεύσεις: 260
Εγγραφή: 30 Αύγ 2007 23:32

Where σε mysql query

Δημοσίευση από philos » 26 Δεκ 2013 15:02

Ναι αλλά έτσι αποκλείει όλα τα extradata = 2 (ενώ μπορεί να υπάρχει πχ contenttypeid = 16 με extradata 2). Επίσης αποκλείει όλα τα contenttypeid = 17, ενώ εγώ μπορεί να θέλω τα contenttypeid = 17 με extradata = 1.

Μόνο αν ισχύουν και οι δύο προυποθέσεις που είπα, θέλω να μην επιστρέφονται οι ανάλογες rows.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Where σε mysql query

Δημοσίευση από korgr » 26 Δεκ 2013 15:55

Χρειάζεσαι sql negation

Κώδικας: Επιλογή όλων

SELECT * FROM tbl_name WHERE NOT (contenttypeid = 17 AND extradata = 2)

Άβαταρ μέλους
panxer
Δημοσιεύσεις: 113
Εγγραφή: 26 Ιουν 2011 20:29
Τοποθεσία: Athens, Greece
Επικοινωνία:

Where σε mysql query

Δημοσίευση από panxer » 26 Δεκ 2013 17:28

korgr έγραψε:Χρειάζεσαι sql negation

Κώδικας: Επιλογή όλων

SELECT * FROM tbl_name WHERE NOT (contenttypeid = 17 AND extradata = 2)
ακριβώς, συγγνώμη δε διάβασα το ερώτημα παρά διαγώνια.

Άβαταρ μέλους
philos
Δημοσιεύσεις: 260
Εγγραφή: 30 Αύγ 2007 23:32

Where σε mysql query

Δημοσίευση από philos » 26 Δεκ 2013 19:24

Ευχαριστώ πολύ παιδιά! :)

Απάντηση

Επιστροφή στο “MySQL”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες