Szukam dobrej instrukcji SQL, aby wybrać wszystkie wiersze z poprzedniego dnia z jednej tabeli. Tabela zawiera jedną kolumnę z datą i godziną. Używam SQL Server 2005.
sql
sql-server
sql-server-2005
rudimenter
źródło
źródło
SELECT *
zwróci wszelkie daty z ich oryginalnymi godzinami.SELECT getdate(),dateadd(day,datediff(day,1,GETDATE()),0)
otrzymuję:2016-02-01 10:27:54.733 2016-01-31 00:00:00.000
Aby uzyskać wartość „dzisiaj” w języku SQL:
Aby otrzymać „wczoraj”:
Aby otrzymać „dzisiaj minus X dni”: zmień -1 na -X.
Więc dla wszystkich wczorajszych wierszy otrzymujesz:
źródło
Wygląda na to, że brakowało oczywistej odpowiedzi. Aby uzyskać wszystkie dane z tabeli (Ttable), w której kolumna (DatetimeColumn) jest datą i godziną z sygnaturą czasową, można użyć następującego zapytania:
Można to łatwo zmienić na dziś, w zeszłym miesiącu, w zeszłym roku itp.
źródło
DatetimeColumn BETWEEN DATEADD(day, DATEDIFF(day, 1, GETDATE()) ,0) AND DATEADD(day, DATEDIFF(day, 0, GETDATE()), 0)
ponieważ musi oceniać DATEDIFF () w każdym wierszuźródło
To naprawdę stary wątek, ale oto moje podejście. Zamiast 2 różnych klauzul, jedną większą niż i mniejszą niż. Używam poniższej składni do wybierania rekordów z daty. Jeśli chcesz określić zakres dat, najlepsze są poprzednie odpowiedzi.
W powyższym przypadku X wyniesie -1 dla wczorajszych rekordów
źródło
Nie mogę tego teraz przetestować, ale:
źródło
To powinno wystarczyć:
źródło
W SQL Server wykonaj następujące czynności:
Należy rzutować obie strony wyrażenia do tej pory, aby uniknąć problemów z formatowaniem czasu.
Jeśli potrzebujesz bardziej szczegółowo kontrolować interwał, powinieneś spróbować czegoś takiego:
źródło
Innym sposobem na powiedzenie „wczoraj” ...
To prawdopodobnie nie zadziała dobrze 1 stycznia, a także pierwszego dnia każdego miesiąca. Ale w locie jest skuteczny.
źródło
Cóż, łatwiej jest rzutować kolumnę z datą i godziną do tej pory, a niż porównywać.
źródło
subdate (now (), 1) zwróci wczorajszy znacznik czasu Poniższy kod wybierze wszystkie wiersze z wczorajszym znacznikiem czasu
źródło