2017-12-14 3 views
-1

Ich habe unten Abfragen in MySQL WorkbenchWie Einzel-SQL-Abfrage mehrmals mit unterschiedlichen Werten starten in MySQL Workbench

Select * from table where col1 = "A" and col2 = "a" 
    Select * from table where col1 = "B" and col2 = "b" 
    Select * from table where col1 = "C" and col2 = "c" 
    Select * from table where col1 = "D" and col2 = "d" 
    Select * from table where col1 = "E" and col2 = "e" 

kann ich diese Abfragen in einer Abfrage wie diese

Select * from table where col1 = <value1> and col2 =<value2> 

wo es lesen machen die Werte aus der Datei (oder irgendwo) und sie der Abfrage zuweisen und ausführen.

Ich denke, ich Wert im folgenden Format speichern kann

A,a 
B,b 
C,b 
D,d 
E,e 
+0

Verwenden 'IN' Operator – Valerica

Antwort

0

Wollen Sie etwas, dem Sie Parameter übergeben?

Wenn ja, wird das folgende Verfahren

DELIMITER // 
CREATE PROCEDURE spMyProc 
(
    IN Val1 VARCHAR(10), 
    IN Val2 VARCHAR(10) 
) 
BEGIN 
    SELECT * FROM table WHERE col1 = Val1 AND col2 = Val2; 
END // 
DELIMITER ; 
+0

arbeiten Bitte als Antwort markieren, wenn es – SEarle1986

+0

Wie half jedes Mal übergeben mehrfach gespeicherte Prozedur aufzurufen, mit anderen Werten. – Yusuf

0

meinen Sie:

select 
    * 
from 
    table 
where 
    (col1 ='A' and col2 = 'a') 
    OR (col1= 'B' and col2 = 'b') 
    OR (col1 = 'C' and col2 = 'c') 
0

Sie konnten verwenden:

Select 
     * 
from 
     table 
where 
     col1 IN ('A','B','C','D','E') and col2=LOWER(col1); 
0

Wie ich in Kommentar vorgeschlagen, Sie kann IN operator verwenden: Sie können mehr über here lesen.

SELECT * FROM table 
WHERE col1 IN ("A", "B", "C", "D", "E") and col2 IN ("a", "b", "c", "d", "e") 
Verwandte Themen