2017-02-23 6 views
0

Ich habe 5 Felder in der Datenbank. Abfrage where-Klausel hat 5 Parameter.Machen Sie einen Suchfilter

jetzt, wenn ich keinen Parameter übergeben, sollte es alle Datensätze abrufen. Wenn ich nur den zweiten Parameter übergebe, ruft es basierend auf diesem Parameter ab. Wenn ich aber den 2. und einen anderen Parameter übergebe, nimmt er nur den zweiten Parameter, und benutzt nicht den Parameter nach dem 2. Parameter. Ich verwende oder Betreiber:

Abfrage

select address from table1 where state ='' or city ='Aa' or address_line ='school' 

es sollten alle Datensätze abzurufen, die Stadt = Ab und address_line = Schule hat. Aber es ruft basierend auf Stadt ab, es verwendet nicht die address_line.

+0

Siehe http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-y-simple- sql-query – Strawberry

+0

ich verstehe nicht ,, – askandanswer

+0

Warum sagst du und durch Wörter und schreibe oder in deiner Frage ?? –

Antwort

0

Ich denke, Sie Chance haben, die zweite ODER zu einem UND für sie auch den zweiten Parameter

zu holen Und Sie sagten litteraly es in der Erklärung „und“ warum also stil Schreib- oder.

+0

, weil die Abfrage möglicherweise den 2. Parameter hat oder nicht. – askandanswer

+0

ja. Du kannst OR verwenden, wenn 2 Antworten vorhanden sind. und nur 1 gute Antwort. und AND, wenn Sie in dieser Situation 2 richtige Antworten haben –