I want one table of the highest BID and lowest ASK (price) for each EntityCode in the db.
The following two sets of code return two result sets I but cannot yet find/figure out how to join them:
Get highest Bid
(SELECT * FROM
(SELECT
Contracts.Orders2Buy.EntityCode,
Contracts.Orders2Buy.Bid,
Contracts.Orders2Buy.NumContractsStillAvailable,
Contracts.Orders2Buy.TimePlaced,
RANK() OVER (PARTITION BY EntityCode
ORDER BY Contracts.Orders2Buy.Bid DESC,
Contracts.Orders2Buy.TimePlaced DESC) AS Rank
FROM
Contracts.Orders2Buy
WHERE
Contracts.Orders2Buy.NumContractsStillAvailable > 0) AS temp
WHERE temp.Rank = 1)
Get Lowest Ask
(SELECT * FROM
( SELECT
Contracts.Orders2Sell.EntityCode,
Contracts.Orders2Sell.Ask,
Contracts.Orders2Sell.NumContractsStillAvailable AS AskVolume,
Contracts.Orders2Sell.TimePlaced,
RANK () OVER ( PARTITION BY EntityCode
ORDER BY Contracts.Orders2Sell.Ask ASC,
Contracts.Orders2Sell.TimePlaced DESC) AS Rank
FROM
Contracts.Orders2Sell
WHERE
Contracts.Orders2Sell.NumContractsStillAvailable > 0) AS temp2
WHERE temp2.Rank = 1)