Trzeba uporządkować rekordy wg pewnej kolumny, w naszym przykładzie dajmy na to wg orderid. Spośród tych rekordów chcemy wybrać tylko 5 ostatnich. Ha nic w tym trudnego, wystarczy takie zapytanie: SELECT TOP(5) orderid FROM Sales.Orders ORDER BY ordered DESC …tylko, że użytkownik chce zobaczyć te rekordy ułożone w kolejności rosnącej. Jeśli w zapytaniu zmienisz DESC […]
Archiwum dla kategorii ‘SQL’
TOP od tyłu (z końcowymi rekordami)
Niespójność w PARSE i ISNUMERIC
Wydawać by się mogło, że jeśli funkcja ISNUMERC stwierdziła, że przekazany w argumencie tekst jest poprawnym wyrażeniem numerycznym, to funkcja PARSE powinna umieć ten napis poprawnie skonwertować na liczbę. Tymczasem: SELECT ISNUMERIC(‘1E3’) zwraca true SELECT PARSE(‘1E3 As FLOAT) zwraca 1000, czyli póki co wszystko działa. Ale: SELECT ISNUMERIC(‘1+E3’) zwraca true SELECT PARSE(‘1+E3 As FLOAT) zwraca […]
Jak usunąć ze zmiennej DATETIME część dotyczącą sekund i pozostałe, zostawiając datę i czas z dokładnością do minuty
Problem jest następujący. Mamy czas z taką dokładnością jak np DATETIME lub DATETIME2. Chcemy pozbyć się części od sekund w dół, czyli mają pozostać tylko data, godzina i minuta. Z pomocą przychodzi tym SMALLDATETIME. Działa on z dokładnością do sekund, ale… kiedy konwertujesz do niego, to funkcja CAST przeprowadza konwersję z dokładnością do minut! Czemu […]
Generowanie tabeli interwałów czasowych
Problem jest następujący. Potrzebna jest tabela wypełniona godzinami (lub datami), w oparciu o którą dalej będzie można budować wyrażenie JOIN dobierające dane z innej tabeli tak aby agregować wszystkie zdarzenia z danej godziny razem. Oto moja propozycja: CREATE PROCEDURE dbo.GetIntervals @dateTimeStart DATETIME, @countMax INT AS BEGIN CREATE TABLE #time ( StartInterval SMALLDATETIME, StopInterval SMALLDATETIME)
Czy wielkość liter w nazwie tabeli ma znaczenie?
I tak i nie. Każda baza danych ma tzw. collation. Collation określa między innymi stronę kodową, która ma wpływ na porównywanie ze sobą napisów, w tym porównywanie wielkości znaków. Jeżeli więc Collation jest zdefiniowane, jako CASE SENSITIVE (czułe na wielkość liter), to pisząc zapytanie musisz odwoływać się do obiektów pisząc nazwy tych obiektów wielką lub […]
Wyłączone constrains
Wszyscy chcemy żeby nasze bazy danych działały idealnie i aby nic ich nie spowalniało. Jeśli mowa byłaby o samochodzie, to teraz opowiedziałbym o sprawdzaniu oleju, ciśnienia w kołach itp. Mowa jedanak o bazie danych. Oto co możesz zrobić, aby twojej bazie było lżej. Jak pisałem w tym artykule możesz chwilowo (np. przed wykonaniem importu) wyłączyć […]
BCP import wybranych kolumn ze zmianą kolejności
Zadanie: Wykorzystując plik formatu należy zaimportować tylko niektóre kolumny i to jeszcze na dodatek zmieniając ich kolumny. Załóżmy, że masz plik tekstowy opisany takim oto plikiem formatu: Niestety tabela w bazie danych ma tylko dwie kolumny. Twoim zadaniem jest zaimportować GroupName do kolumny pierwszej w tabeli, a Name do drugiej kolumny: W takim przypadku musisz […]





























