freestuff.gr αρχική σελίδα
 FAQFAQ    ΑναζήτησηΑναζήτηση   Λίστα ΜελώνΛίστα Μελών   Ομάδες ΜελώνΟμάδες Μελών   <b>Εγγραφή Μέλους</b>Εγγραφή Μέλους 
 ΠροφίλΠροφίλ   Επιλογές μέλους Επιλογές   Τα bookmarks μου Τα bookmarks μου   Προσωπικά μηνύματαΠροσωπικά μηνύματα 
  διαφήμιση  

Καλώς ήρθατε στο forum μας! Για να συμμετάσχετε στις συζητήσεις θα πρέπει να είσαστε μέλος. Γίνετε μέλος τώρα!.

Πρόβλημα με select και πολλαπλά AND / OR


 Forum index » Δημιουργία Web Sites, Γραφικών & Προγραμματισμός » SQL και SQL Servers (RDBMS) » MySQL
Moderators:  Super-Moderators, WebDev Moderators
Εισαγωγή νέου Θέματος   Απάντηση στο Θέμα Σελίδα 1 από 1 [4 Μηνύματα]       Mark the topic unread :: Προηγούμενο θέμα :: Επόμενο θέμα
ΑποστολέαςΜήνυμα
sibas
Honorary Member

Μέλος από: 21 Φεβ 2003
Templates: 1
Μηνύματα: 256+

Περιοχή: Μια εδώ.. Μια εκεί.. Σήμερα είμαι εδώ!!!
View users profile Visit posters website
ΜήνυμαΣτις: 07 Ιαν 2017 13:53    Θέμα: Πρόβλημα με select και πολλαπλά AND / OR Απάντηση με παράθεση  Mark this post and the followings unread

Γεια χαρά και καλή Χρονιά!!!

Για να δω τώρα πως θα εξηγήσω το πρόβλημα, λοιπόν θέλω να παρουσιασω κείμενο σε πολλάπλες σελίδες

στην db έχω τα εξής data

παράθεση:

---id---------pageID------displayINPAGE-------text-----
---100----------1-----------------12---------------lorem---
---99-----------1-----------------12---------------ypsum--
---98-----------10----------------12--------------ypsum2--
---97-----------12----------------12---------------lorem2--
---96-----------12----------------12---------------lorem1--
---95----------κλπ--------------κλπ---------------κλπ-----



θέλω να παρουσιάσω όλα τα text που αντιστοιχούν στον αριθμο 12 στο pageID ΚΑΙ στο displayINPAGE με το εξής query

κώδικας:
SELECT
   id,
   pageID,
   displayINPAGE,
   text
FROM
   posts
WHERE
   displayINPAGE=12
OR
   pageID=12
ORDER BY
   id DESC LIMIT 4;


δηλαδη παρουσιάζει το text από το 100 εως και το 97
όλα μια χαρά μέχρι εδώ

το πρόβλημα αρχίζει όταν εκτελώ δεύτερο query για να παρουσιάσω τα επόμενα

κώδικας:
SELECT
   id,
   pageID,
   displayINPAGE,
   text
FROM
   posts
WHERE
   id < 97
AND
   displayINPAGE=12
OR
   pageID=12
ORDER BY
   id DESC LIMIT 4;


δηλαδη θέλω να παρουσιάζει το text από το 96 εως και το 93

το πρόβλημα με το παραπάνω είναι ότι το id 97 και το 96 το παρουσιάζει 2 φορές

αν βγάλω το OR pageID=12 τοτε εμφανίζεται σωστά!!

Τι κάνω λάθος???

_________________
simply4all.net A social directory - yourlink.mobi A mobile directory for websites -
W.I.D submit a website by country and area
fafos
Script Master

Μέλος από: 30 Νοε 2004
Βοηθήματα: 17
Scripts: 6
Μηνύματα: 256+


View users profile
ΜήνυμαΣτις: 07 Ιαν 2017 15:10    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

gia dokimase na valeis se parenthesi to OR:

κώδικας:
SELECT
   id,
   pageID,
   displayINPAGE,
   text
FROM
   posts
WHERE
   id < 97
AND
   (displayINPAGE=12
OR
   pageID=12)
ORDER BY
   id DESC LIMIT 4;

_________________
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...
sibas
Honorary Member

Μέλος από: 21 Φεβ 2003
Templates: 1
Μηνύματα: 256+

Περιοχή: Μια εδώ.. Μια εκεί.. Σήμερα είμαι εδώ!!!
View users profile Visit posters website
ΜήνυμαΣτις: 07 Ιαν 2017 15:25    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

fafos you are a Script Master!!!
Μπορώ επιτέλους να παω να φάω γιατί είχα πει οτι δεν θα σηκωθώ αν δεν το έβρισκα.. Victory!

_________________
simply4all.net A social directory - yourlink.mobi A mobile directory for websites -
W.I.D submit a website by country and area
sibas
Honorary Member

Μέλος από: 21 Φεβ 2003
Templates: 1
Μηνύματα: 256+

Περιοχή: Μια εδώ.. Μια εκεί.. Σήμερα είμαι εδώ!!!
View users profile Visit posters website
ΜήνυμαΣτις: 07 Ιαν 2017 15:47    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

OK έχω 30-40 microsecond delay που σημαίνει οτι πρέπει να επανεξετάσω το όλο θέμα, θα επανέλθω σε αυτό με το πλήρες query

_________________
simply4all.net A social directory - yourlink.mobi A mobile directory for websites -
W.I.D submit a website by country and area
Εμφάνιση Μηνυμάτων:   
Εισαγωγή νέου Θέματος   Απάντηση στο Θέμα Σελίδα 1 από 1 [4 Μηνύματα] Mark the topic unread :: Προηγούμενο θέμα :: Επόμενο θέμα
 Forum index » Δημιουργία Web Sites, Γραφικών & Προγραμματισμός » SQL και SQL Servers (RDBMS) » MySQL


Σχετικά θέματα
 Θέματα   Απ/σεις   Αποστολέας   Τελευταίο μήνυμα 
ερώτηση της ημέρας, υπάρχει τρόπος με select να εμφανίσω το length του κάθε row? 5 sibas 03 Αυγ 2016 15:27
gvre Εμφάνιση τελευταίου μηνύματος
 
Τώρα είναι 23 Ιαν 2017 04:23 | All times are UTC + 2


Email This Page to Someone! add to Favorites

     Powered by p h p B B © 2001,2005 p h p B B Group
Για άμεση επικοινωνία με τον διαχειριστή του freestuff.gr στο email: freestuff.gr(παπάκι)gmail.com


Copyright © 1999-2013 Freestuff.gr All Rights Reserved  
Version Aegean, designed by N. Tsaganos