702 Shares 5960 views

Między SQL Opis: przykłady

Podczas pracy z relacyjnej bazy danych, w której dane są przechowywane w tabelach, użytkownicy często mają do czynienia z zadaniem wartości pomiarowych włączonych (nie dołączone) w pewnym zakresie. języka SQL umożliwia definiowanie wielu, które powinny (nie powinien) należą do wartości różnych opcji – Operatora, Like operatora, połączenie warunkach więcej – mniej, a także SQL dla Pomiędzy operatorem. Opis i przykłady w tym artykule skupimy się na najnowszej wersji.


„Pomiędzy” operatora w SQL: ograniczenia składni

Dosłownie operator między SQL i przetłumaczone – „pomiędzy”. Jego stosowanie pozwala ustawić limit „i od” danej dziedzinie, a jeśli następna wartość mieści się w przedziale, wówczas orzeczenie zostanie ustawiona na „true”, a wartość spadnie w ostatecznej próbie.

Składnia operatora jest bardzo prosta:

select *

Z tabeli t1

Gdzie t1.n między 0 i 7

Jak widać, po słowie kluczowym między wami musi określać wartość dolnej granicy, a następnie I, a górna granica.

Wyliczać, jakie rodzaje danych operator może pracować między SQL:

  1. Cyframi – całkowitą i ułamkową.
  2. Z datami.
  3. Z tekstem.

Czy to między instrukcja SQL ma pewne osobliwości. Dostajemy je znać:

  1. Podczas pracy z liczbami i datami granicznymi wartościami „iz” są zawarte w próbce.
  2. Dolna wartość graniczna musi być mniejsza od górnej granicy, inaczej nic nie zostanie wyświetlona, ponieważ warunek nie jest logicznie prawdziwe. Szczególną ostrożność musi być, gdy zamiast konkretnych wartości w zmiennych warunkowych są włączone.

Podczas pracy z wartości tekstowej górnym zakresie nie jest zawarty w próbce, jeśli nie jest określona bardzo dokładnie. Uważamy tę funkcję w następujących sekcjach szczegółowo.

Przykładowe numery i daty w pewnym zakresie

Przygotuj tabelę z menedżerów danych, pracy w organizacji. W tabeli będzie miał następującą strukturę:

Nazwa pola

Typ danych

opis

kod

licznik

Unikalny identyfikator pracownika

nazwisko

tekst

Nazwa oficera

nazwa

tekst

Nazwa pracownik

patronimiczny

tekst

patronymic pracownik

Paul

tekst

personel płciowe (M / F)

Data_priema

Date / Time

Data otrzymania pracownika do pracy

Chislo_detey

liczba

Liczba dzieci w pracownika

Wypełnić w tabeli przez następujące dane:

kod

nazwisko

nazwa

patronimiczny

Paul

Data_priema

Chislo_detey

1

Aleksandrow

Irene

N.

F

01.05.2014

1

2

Borowoj

Andrew

S.

M

21.09.2013

0

3

Winogradow

Sergei

Pawłowicz

M

15.06.1998

1

4

Shumilin

Alexander

B.

M

25.12.2004

2

5

vishnyakov

Leonid

A.

M

09.10.2007

0

6

Tropnikov

Wasilij

S.

M

12.01.2016

3

7

perły

Nikita

V.

M

11.01.2017

1

8

Awdiejewa

nacięcie

K.

F

31.03.2001

2

9

Jakowlew

Leonid

Nikołajewicz

M

16.02.2009

0

Tworzą zapytania sql między, który pomoże nam wybrać wszystkich pracowników, którzy mają 2 lub 3 dzieci:

Menedżerowie SELECT *.

Z Menedżerów

GDZIE Menedzhery.Chislo_detey pomiędzy 2 i 3

Rezultatem będzie trzy wiersze z danymi dotyczącymi pracowników z nazwiskami Shumilin, Tropnikov i Awdiejewa.

Teraz wybierz pracownicy otrzymali od 1 stycznia 2005 roku do 31 grudnia 2016 r. Należy zauważyć, że różne bazy danych na różne sposoby pozwalają nagrywać pod względem terminów. W większości przypadków data siły do formularza dzień-miesiąc-rok (lub bardziej wygodne) i nagrany w pojedyncze lub podwójne cudzysłowy. DBMS MS Access Data zawierać znaku „#”. Uruchomić ten przykład opiera się tylko na nim:

SELECT * Menedzhery.Data_priema Managers.

Z Menedżerów

GDZIE menedżerów. Data_priema dla Pomiędzy # 01/01/2005 # A # 31/12/2016 #

Rezultatem będzie pięć pracownicy zatrudnieni w okresie włącznie.

Następnie zobaczymy jak to działa między strunami SQL.

Pracować w między strunami

Bardzo częstym problemem, który musi być rozwiązany przy pracy z nazwiskami pracowników – jest potrzeba, aby wybrać tylko te, których nazwy zaczynają się od pewnego listu. I staramy się wykonać zapytanie i wybierz pracowników, których nazwy zaczynają się od nazwiska od A do B:

Menedżerowie SELECT *.

Z Menedżerów

GDZIE Menedzhery.Familiya między „A” i „B”

ORDER BY 2

Wynik jest następujący:

kod

nazwisko

nazwa

patronimiczny

Paul

Data_priema

Chislo_detey

8

Awdiejewa

nacięcie

K.

F

31.03.2001

2

1

Aleksandrow

Irene

N.

F

01.05.2014

1

2

Borowoj

Andrew

S.

M

21.09.2013

0

Jak widać, oba pracownicy z nazwiskiem na literę B na liście nie zostały uwzględnione. Co jest tego powodem? Faktem jest dokładnie jak operator porównuje ciągi nierównej długości. Linia „B” jest krótszy łańcuch „Winogradow” i wyściełane. Ale podczas sortowania alfabetycznie przestrzenie będzie szybsze znaków, a nazwa próbki nie spadnie. Różnych baz danych zapewniają różne sposoby rozwiązania tego problemu, ale często jest to najprostszy sposób, aby wskazać niezawodność następnej litery alfabetu w zakresie:

Menedżerowie SELECT *.

Z Menedżerów

GDZIE Menedzhery.Familiya między „A” i „D”

ORDER BY 2

Po wykonaniu wynik zapytania zadowoli nas całkowicie.

Ten niuans istnieje tylko podczas pracy z danych znakowych, ale to pokazuje, że nawet podczas pracy z takimi operatorami jak między prostymi, trzeba być ostrożnym.