Menu

Select compliqué pour moi :) [Résolu]

mikesunshine59 73 Messages postés lundi 22 janvier 2018Date d'inscription 24 février 2018 Dernière intervention - 28 janv. 2018 à 20:37 - Dernière réponse : yg_be 5607 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 24 mai 2018 Dernière intervention
- 29 janv. 2018 à 20:40
Bonjour,

La requête ci dessous me permet de connaitre quels sont les marchés qui sont en baisses.
select t1.MarketName, t1.Last, t2.Last, t1.Bid, t2.Bid, t1.Ask, t2.Ask, t1.BaseVolume, t2.BaseVolume, t1.Datecreation, t2.Datecreation 
from market as t1, market as t2
where t1.MarketName = t2.MarketName
and t1.Last < t2.Last
and t1.Datecreation > t2.Datecreation
and (t1.BaseVolume - t2.BaseVolume)/t2.BaseVolume < 0/100
and (t1.Bid - t2.Bid)/t2.Bid < 0/100
ORDER BY t1.BaseVolume DESC

Je voudrais avoir uniquement le marché qui correspond à cette requête :
SELECT `MarketOpportunity`
 FROM `orders_history` 
ORDER BY Timestamp DESC LIMIT 0,1

Comment imbriquer les deux ?

Merci pour votre aide.

EDIT : Ajout des balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45
Afficher la suite 

Votre réponse

5 réponses

jordane45 21143 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 24 mai 2018 Dernière intervention - 28 janv. 2018 à 20:45
+1
Utile
Bonjour,

Et quel est le lien entre tes tables un id ? un "name" ?
Car d'un côté ta première requête tape sur la table market et dans ta seconde requête sur orders_history



NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Cette réponse vous a-t-elle aidé ?  
mikesunshine59 73 Messages postés lundi 22 janvier 2018Date d'inscription 24 février 2018 Dernière intervention - 28 janv. 2018 à 20:54
Le lien est entre MarketOpportunity (from orders_history) et MarketName (from market)
yg_be 5607 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 24 mai 2018 Dernière intervention > mikesunshine59 73 Messages postés lundi 22 janvier 2018Date d'inscription 24 février 2018 Dernière intervention - 28 janv. 2018 à 22:55
alors, suggestion:
select t1.MarketName, t1.Last, t2.Last, t1.Bid, t2.Bid, t1.Ask, t2.Ask, t1.BaseVolume, t2.BaseVolume, t1.Datecreation, t2.Datecreation 
from market as t1, market as t2, 
(SELECT `MarketOpportunity`
 FROM `orders_history` 
ORDER BY Timestamp DESC LIMIT 0,1) as t3
where t1.MarketName = t2.MarketName
and t1.MarketName = t3.MarketOpportunity
and t1.Last < t2.Last
and t1.Datecreation > t2.Datecreation
and (t1.BaseVolume - t2.BaseVolume)/t2.BaseVolume < 0/100
and (t1.Bid - t2.Bid)/t2.Bid < 0/100
ORDER BY t1.BaseVolume DESC
mikesunshine59 73 Messages postés lundi 22 janvier 2018Date d'inscription 24 février 2018 Dernière intervention - 29 janv. 2018 à 17:05
Merci jordane45 c'est exactement ce dont j'ai besoin.
yg_be 5607 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 24 mai 2018 Dernière intervention > mikesunshine59 73 Messages postés lundi 22 janvier 2018Date d'inscription 24 février 2018 Dernière intervention - 29 janv. 2018 à 20:40
peux-tu alors marquer le sujet comme résolu?
Commenter la réponse de jordane45