0
votes

Comment rejoindre deux tables avec condition sur leurs colonnes?

J'ai deux tables:


Tableau A:

SELECT * FROM B INNER JOIN A ON A.key=B.key where A.price > B.min AND A.price < B.max;


2 commentaires

Pourriez-vous fournir l'exemple qui a mal tourné?


Souhaitez-vous montrer les données d'échantillon?


3 Réponses :


0
votes

essayer

Sélectionnez * à partir de B Gauche Rejoignez A sur B.Key = A.Key où A.Price> B.Min et A.Price

rejoindre gauche retournera les valeurs dans la table de gauche. Ici c'est b

Il est montré ici https://www.w3schools.com/sql/sql_ref_join.asp < / a>


0 commentaires


1
votes

Utilisez cette requête MySQL pour récupérer les résultats et assurez-vous de définir la colonne de prix sur INT ou Float.

p>

SELECT 
    table1.id,table1.key,table1.price,
    table2.min,table2.max
FROM
    table1
        INNER JOIN
    table2 ON table1.key = table2.key
        AND (table1.price > table2.min
        AND table1.price < table2.max);


2 commentaires

Quelle est la différence entre votre requête et la mienne? Sont-ils égaux?


Les deux utilisent presque la même période dans l'exécution de 0,0006 secondes.