Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Najlepszy sposób na przechowywanie kwartału i roku w SQL Server?

Jeśli musisz użyć oddzielnego roku i kwartału zamiast daty (ponieważ wydaje się, że masz określone wymagania dotyczące raportowania), wybrałbym tinyint na kwartał i smallint przez rok i przechowuj je w PAYMENT samego stołu.

Nie przechowywałbym tego w innym stole. To źle, ponieważ:

  • Musisz upewnić się, że wyprodukowałeś wystarczająco dużo lat/kwartałów
  • Musisz dołączyć i użyć klucza obcego

Jeśli przechowujesz dane razem z rekordem, pomoże to w odczytach. Twój stół może być mały, ale zawsze dobrze jest pamiętać o wydajności.

DLACZEGO

Wyobraźmy sobie, że musisz zdobyć

W takim przypadku potrzebujesz indeksu pokrycia we wszystkich elementach i nadal nie pomaga, ponieważ zapytanie dotyczy konkretnego kwartału, a nie kwartału. Jednak posiadanie danych w tabeli pomoże w lżejszym planie wykonania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego użycie znaku podkreślenia w filtrze LIKE daje mi wszystkie wyniki?

  2. Zaktualizuj podciąg kolumny

  3. Jak zaimplementować LIMIT z SQL Server?

  4. Rozpoznawanie przeciążenia nie powiodło się, ponieważ nie można wywołać dostępnego „nowego” bez konwersji zawężającej

  5. Wykonywanie przygotowanych instrukcji generowanych przez NHibernate w SQL Server Management Studio