Wpis z mikrobloga

#programowanie #sql

Cześć,

Mam takie o to zapytanie do bazy:

SELECT * FROM tstockdetails WHERE (closeprice/open_price-1)*100 > 5 and volume*closeprice > 200000 and closeprice > 1.0 and date(date) > '2013-01-01' ORDER by date DESC

Teraz chciałbym dodać do zapytania warunek coś na zasadzie: pobierz rekord tylko jeśli w bazie znajduje się 100 rekordów o wcześniejszej dacie. Na przykładzie jednego rekordu: Jeśli pobrał mi stockdetails o dacie 2013-03-20 to żeby w bazie ten sam rekord miał też 100 rekordów wcześniej czyli 2013-03-19, 2013-03,18 itd aż do 100.

Edit: Albo trochę łatwiej, dla pojedynczego rekordu stockdetails.date -100 days nie może zwrócić null.
  • 4
  • Odpowiedz
@pulla:
select *, (select count(*) from questioncategories sql2 where sql2.created <= sql1.created ) as prevCount
from questioncategories sql1 having prevCount > 3;

nie chce mi sie przerabiac na Twoje nazwy tabel, powinienes ogarnac o co chodzi jezeli masz podstawowe pojecie o sqlu
  • Odpowiedz