Bazy danych

Witryna zawiera podstawowe informacje odnośnie funkcji w bazach danych takich jak MySQL i Oracle oraz podstawowe informacje dotyczące zapytań.

środa, 16 listopada 2011

MySQL - TRUNCATE()

TRUNCATE()


TRUNCATE(wartosc,wartosc1)

Zwraca liczbę "wartosc", uciętą do "wartosc1" miejsc "po przecinku".

Jeżeli "wartosc1", jest liczbą 0, wtedy wynikiem jest liczba zwróciona bez części dziesiętnej. (przykład 3)

UWAGA!!!
"wartosc1" może być też liczbą ujemną. (przykład 4).

Przykład 1:
SELECT TRUNCATE( 3.123, 1 ) ;
Wynik:
TRUNCATE(3.123,1) 3.1


Przykład 2:
SELECT TRUNCATE( 3.123, 2 )
Wynik:
TRUNCATE(3.123,2) 3.12


Przykład 3:
SELECT TRUNCATE( 3.123, 0 )
Wynik:
TRUNCATE(3.123,0) 3


Przykład 4:
Dwie cyfry z prawej strony są zamieniane na 0.
SELECT TRUNCATE( 512 , -2 )
Wynik:
TRUNCATE(512,-2) 500


Wynikiem jest 0. 3 cyfry z prawej są "ucinane" (zamieniane na 0).
SELECT TRUNCATE( 512 , -3 )
Wynik:
TRUNCATE(512,-2) 0

MySQL - TAN()

TAN()


TAN(wartosc)

Zwraca tangens z liczby "wartosc".


Przykład 1:
SELECT TAN( 0 )
Wynik:
TAN(0) 0

Przykład 2:
SELECT TAN( PI( ) /4 )
Wynik:
TAN(PI()/4) 1

MySQL - SQRT()

SQRT()

SQRT(wartosc)

Zwraca pierwiastek kwadratowy z liczby "wartosc".


Przykład 1:
SELECT SQRT( 4 )
Wynik:
SQRT(4) 2


Przykład 2:
SELECT SQRT( 16 )
Wynik:
SQRT(16) 4


Przykład 3:
Przykład podwójnego użycia funkcji SQRT()

SELECT SQRT( SQRT( 16 ) )
Wynik:
SQRT(SQRT(16)) 2

MySQL - SIN()

SIN()


SIN(wartosc)

Funkcja zwraca Sinus dla podanej wartosci.


Przykład 1:
SELECT SIN( 1 )
Wynik:
SIN( 1 ) 0.8414709848079


Przykład 2:
SELECT SIN( 1.5 * PI( ) )
Wynik:
SIN( 1.5*PI() ) -1


Przykład 3:
SELECT SIN( 0 )
Wynik:
SIN( 0 ) 0

MySQL - SIGN()

SIGN()

SIGN(wartosc)

Zwraca signum liczby.
Signum liczby oznacza znak liczby.

Dla liczb większych od zera wynikiem jest 1.
Dla liczby równej zero wynikiem jest 0.
Dla liczb ujemnych wynikiem jest -1.

Przykład 1:
SELECT SIGN(-100) ;
Wynik:
SIGN(-100) -1


Przykład 2:
SELECT SIGN( 0 )
Wynik:
SIGN(0) 0


Przykład 3:
SELECT SIGN( 100 )
Wynik:
SIGN(100) 1

MySQL - ROUND()

ROUND()


ROUND(wartosc) lub ROUND(wartosc, wartosc1)

Funkcja ROUND zwraca zaokrągloną liczbę.
Jeżeli argument "wartosc1" nie jest określony, domyslnie przypisywane jest 0, czyli zaokrąglenie do części całkowitych.

Przykład 1:
SELECT ROUND( 1.5 )
Wynik:
ROUND(1.5) 2


Przykład 2:
SELECT ROUND( 1.49 )
Wynik:
ROUND(1.49) 1


Przykład 3:
SELECT ROUND( 1, 3 )
Wynik:
ROUND(1, 3) 1


ROUND(wartosc, wartosc1)
wartosc1 - liczba miejsc "po przecinku", do których zaokrąglamy naszą liczbę


Przykład 4:
SELECT ROUND(1.3578, 1)
Wynik:
ROUND(1.3578, 1) 1.4


Przykład 5:
SELECT ROUND( 1.3578, 2 )
Wynik:
ROUND(1.3578, 2) 1.36


Przykład 6:
SELECT ROUND( 1.3578, 3 )
Wynik:
ROUND(1.3578, 3) 1.358

MySQL - RAND()

RAND()

Funkcja zwraca losową liczbę z zakresu <0,1>


Przykład 1:
SELECT RAND( )
Wynik:
RAND() 0.1344571543247


Przykład 2:
SELECT RAND( )
Wynik:
RAND() 0.49181306780485



Funkcją RAND() możemy również wyznaczać losowe liczby z podanego przez nas przedziału.

Jeżeli chcemy wyznaczyć losową liczbę z przedziału A <= LICZBA < B stosujemy następujący wzór FLOOR(A + RAND() * ( B - A )). (funkcja FLOOR - podłoga z liczby - patrz (funkcje matematyczne - MySQL)


Przykład 3:
Chcemy wyświetlić liczbę z przedziału 5-8.

A = 5
B = 8

FLOOR(5 + RAND() * (8-5))
FLOOR(5 + RAND() * 3)


SELECT FLOOR(5 + (RAND() * 3));

Wyniki:
FLOOR(5 + (RAND() * 3)) 6
FLOOR(5 + (RAND() * 3)) 7
FLOOR(5 + (RAND() * 3)) 7
FLOOR(5 + (RAND() * 3)) 5
FLOOR(5 + (RAND() * 3)) 6



Wyświetlanie losowych rekordów z tabeli.

Funkcji RAND() możemy równiez użyć do wyświetlenia losowych rekordów z tabeli.


Składnia zapytania:
SELECT * FROM tabela ORDER BY RAND() LIMIT XXX;

gdzie
tabela - nazwa tabeli
LIMIT XXX - określa ilość rekordów, które chcemy wyświetlić.


Przykład:

Zostaną wyświetlone 2 losowe rekordy z tabeli "tabela".
SELECT * FROM tabela ORDER BY RAND() LIMIT 2;


Zostanie wyświetlonych 20 losowych rekordów z tabeli "tabela".
SELECT * FROM tabela ORDER BY RAND() LIMIT 20;

MySQL - RADIANS()

RADIANS()


RADIANS(wartosc)

Funkcja zwraca liczbę stopni w radianach.


Przykład 1:
SELECT RADIANS( 180 )
Wynik:
RADIANS(180) 3.1415926535898



SELECT PI( )
Wynik:
PI() 3.141593


Przykład 2:
SELECT RADIANS( 360 )
Wynik:
RADIANS(360) 6.2831853071796

niedziela, 13 listopada 2011

MySQL - POW(), POWER()

POW(), POWER()

POW(wartosc1, wartosc2)
lub
POWER(wartosc1, wartosc2)

Funkcja zwraca liczbę "wartosc1" podniesioną do potęgi "wartosc2".


Przykład 1:
SELECT POW( 1, 1 )
Wynik:
POW(1,1) 1


Przykład 2:
SELECT POW( 3, 2 )
Wynik:
POW(3,2) 9


Przykład 3:
SELECT POW( 4, 2 )
Wynik:
POW(4,2) 16


Przykład 4:

SELECT POW( 4, 10 )
Wynik:
POW(4,10) 1048576

MySQL - PI()

PI()

PI()

Funkcja zwraca wartość liczby "PI". Domyślną liczbą cyfr w wyniku PI() jest 7.
Możemy kontrolować liczbę wyświetlanych przez nas cyfr. (przykład 2, przykład 3).


Przykład 1:
SELECT PI( )
Wynik:
PI() 3.141593


Przykład 2:
SELECT PI( ) + 0.0000000;
Wynik:
PI()+0.0000000 3.1415927


Przykład 3:
SELECT PI( ) + 0.000000000000000000000
Wynik:
PI()+0.000000000000000000000 3.141592653589793115998

MySQL - OCT()

OCT()

OCT(liczba)


Funkcja zwraca ósemkową wartośc liczby "liczba".

UWAGA!!!
Wynikiem jest STRING.


OCT(wartosc) jest równoważne z CONV(wartosc,10,8)
Jeżeli wartość N nie jest określona zwracane jest NULL.


Przykład 1:
SELECT OCT( 10 )
Wynik:
OCT(10) 12


Przykład 2:
SELECT OCT( 8 )
Wynik:
OCT(8) 10

MySQL - MOD()

MOD()

MOD(liczba, dzielenie)


Funkcja zwraca resztę z dzielenia liczby "liczba" przez "dzielenie".

Dla przykładu liczbe 5 dzielimy przez 2.
Wynikiem jest 2.5.

W liczbie 5 liczba 2 "zmieści się" 2 razy. Resztą jest liczba 1.
2x2 + 1 = 5


Używanie operacji reszty z dzielenia można zapisać na kilka sposobów.

MOD(x,y)
lub
x % y
lub
x MOD y


UWAGA!!!
Funkcja MOD() umożliwia operacje na liczbach, w których występuje część ułamkowa (przykład 4).

Przykład 1:
SELECT MOD( 5, 2 )
Wynik:
MOD(5,2) 1


Przykład 2:

SELECT 5 MOD2
Wynik:
5 MOD 2 1


Przykład 3:

SELECT 5 %2
Wynik:
5 % 2 1


Przykład 4:
W liczbie 5 liczba 2 "zmieści się" 2 razy. Resztą jest liczba 1.5.

SELECT 5.5 %2
Wynik:
5.5 % 2 1.5

MySQL - LOG10()

LOG10()

LOG10(wartosc)


Funkcja zwraca logarytm dziesiętny z liczby "wartosc". (logarytm o podstawie 10)


LOG10(wartosc) jest równoważne z LOG(10,wartosc)


Przykład 1:
SELECT log10( 1000 )
Wynik:
log10(1000) 3


Przykład 2:
SELECT log10( 10 )
Wynik:
log10(10) 1

MySQL - LOG2()

LOG2()

LOG2(wartosc)


Funkcja zwraca logarytm binarny (dwójkowy) z liczby "wartosc". (logarytm o podstawie 2)


LOG2(wartosc) jest równoważne z LOG(wartosc) / LOG(2).




Jest szeroko stosowany w informatyce: log2 x zaokrąglony w górę do jedności, to najmniejsza liczba bitów, w której można umieścić informację o liczbie możliwości x. Pojawia się w asymptotycznych ograniczeniach złożoności algorytmicznych np. wtedy kiedy algorytm korzysta ze struktury drzewa binarnego itp.

Źródło - wikipedia.org


Przykład 1:
SELECT log2( 256 )
Wynik:
log2(256) 8


Przykład 2:

SELECT log2( 2 )
Wynik:
log2(2) 1

sobota, 12 listopada 2011

MySQL - LOG

LOG()

LOG(wartosc)

Funkcja zwraca logarytm naturalnych z liczby "wartosc".


lub LOG(wartosc1, wartosc2)

Funkcja zwraca wartosc logarytmu przy podstawie z wartosc1 z liczby wartosc2.

UWAGA!!!
Jeżeli wartosc2 jest mniejsza lub równa 0, lub wartosc1 jest mniejsza lub równa 1 zostanie zwrócONE NULL. (przykład 3, przykład 4).


LOG(wartosc1,wartosc2) jest równoważne z LOG(wartosc2) / LOG(wartosc1).


Przykład 1:
SELECT log( 1 )
Wynik:
log(1) 0

SELECT ln( 1 )
Wynik:
ln(1) 0


Przykład 2:
SELECT log( 2, 8 )
Wynik:
log(2,8) 3


Przykład 3:

SELECT log( 1, 8 )
Wynik:
log(1,8) NULL


Przykład 4:
SELECT log( 2, 0 )
Wynik:
log(2,0) NULL

MySQL - LN

LN()

LN(wartosc)


Funkcja zwraca logarytm naturalny z liczby "wartosc".

UWAGA!!!
Jeżeli liczba "wartosc" jest mniejsza lub równa 0 wynikiem będzie NULL.


Przykład 1:
SELECT LN( 0 )
Wynik:
LN(0) NULL


Przykład 2:
SELECT LN( 2 )
Wynik:
LN(2) 0.69314718055995


Przykład 3:

SELECT LN( 2.718281828459 )
Wynik:
LN(2.718281828459)
0.99999999999998

MySQL - HEX

HEX()

HEX(wartosc)


Funkcja zwraca liczbę "wartosc" w reprezentacji szesnastkowej.

Przykład 1:
SELECT hex( 10 )
Wynik:
hex(10) A


Przykład 2:
SELECT hex( 11 )
Wynik:
hex(11) B

MySQL - FORMAT

FORMAT()

FORMAT(wartosc1, wartosc2)


Funkcja FORMAT(...) pozwala na wyświetlenie liczby w formacie XXX,XXX,XXX.XXX. Wynikiem jest string.

Działanie funkcji FORMAT bardzo dobrze zobrazują poniższe przykłady.



Przykład 1:
SELECT FORMAT( 10000, 10 )
Wynik:
FORMAT(10000,10) 10,000.0000000000


Przykład 2:
SELECT FORMAT( 10000, 2 )
Wynik:
FORMAT(10000,10) 10,000.00


Przykład 3:
UWAGA!
Liczba 10000.1234 przy wyświetlaniu została skrócona do 10000.12 (okresliliśmy, aby przy wyświetlaniu były widoczne tylko 2 ostatnie cyfry w naszej liczbie).

SELECT FORMAT( 10000.1234, 2 )
Wynik:
FORMAT( 10000.1234, 2 ) 10,000.12

wtorek, 8 listopada 2011

MySQL - FLOOR

FLOOR()

FLOOR(wartosc)


Funkcja zwraca liczbę całkowitą nie większą niż "wartosc". (podłoga liczby)

Przykład 1:
SELECT FLOOR( 2.46 )
Wynik:
FLOOR(2.46) 2


Przykład 2:
SELECT FLOOR( 1.46 )
Wynik:
FLOOR(1.46) 1


Przykład 3:
SELECT FLOOR( -5 )
Wynik:
FLOOR(-5) -5

MySQL - EXP()

EXP()

EXP(wartosc)


Funkcja zwraca wartość liczby e podniesionej do potęgi "wartosc".


EXP(1) = e^1
EXP(0) = e^0


Przykład 1:
SELECT EXP( 1 )
Wynik:
EXP(1) 2.718281828459


Przykład 2:
SELECT EXP( 0 )
Wynik:
EXP(0) 1

MySQL - DEGREES()

DEGREES()

DEGREES(wartosc)


Funkcja zwraca przekonwertowaną wartość z radianów na stopnie.

Przykład 1:
SELECT DEGREES( PI( ) ) ;
Wynik:
DEGREES(PI()) 180


Przykład 2:
SELECT DEGREES( 2 * PI( ) )
Wynik:
DEGREES(2*PI()) 360


Przykład 3:
SELECT DEGREES( PI()/2 )
Wynik:
DEGREES(PI()/2) 90

MySQL - COS

COS()


COS(wartosc)

Funkcja zwraca cosinus dla podanej wartosci.


Przykład 1:
SELECT COS( 1 )
Wynik:
COS( 1 ) 0.54030230586814


Przykład 2:
SELECT COS( PI() )
Wynik:
COS( PI() ) -1


Przykład 3:
SELECT COS( 2*PI() )
Wynik:
COS( 2*PI() ) 1

MySQL - CONV

CONV()

CONV(wartosc1, wartosc2, wartosc3);

Funkcja CONV(...) pozwala na konwertowanie liczb na różne systemy liczbowe. Zwróconą wartością jest string.

wartosc1 - określa wartość, którą chcemy przekonwertować.
wartosc2 - określa system liczbowy, w którym wyrażona jest "wartosc1"
wartosc3 - określa system liczbowy, w którym chcemy otrzymać wynik.


UWAGA!!!
Jeżeli któraś z wartości jest pusta wynikiem będzie wartość NULL.

SELECT CONV( 2, '10', '' ) ;
CONV(2,'10','') NULL


Przykład 1:
Konwertujemy liczbę 2 (określoną w systemie dziesiętnym (10) - argument drugi, na system dwójkowy (2) - argument trzeci).

SELECT CONV( 2, '10', '2' ) ;
Wynik:
CONV(2,'10','2') 10

Wszystko się zgadza. Liczba 2 w systemie binarnym (dwójkowym) wynosi 10.


Przykład 2:
Konwertujemy liczbę 15 (określoną w systemie szesnastkowym (16) - argument drugi, na system dziesiętny (10) - argument trzeci).

SELECT CONV( 'f', '16', '10' ) ;
Wynik:
CONV( 'f', '16', '10' ) 15

sobota, 5 listopada 2011

MySQL - CEIL(), CEILING()

CEIL(), CEILING()

CEIL(wartosc) oraz CEILING(wartosc).

Zwraca najmniejszą liczbę całkowitą nie mniejszą niż "wartosc".


Przykład 1:
SELECT CEILING( 1 )
Wynik:
CEILING(1) 1


Przykład 2:
SELECT CEILING( 1.5 )
Wynik:
CEILING(1.5) 2


Przykład 3:
SELECT CEILING( -1.5 )
Wynik:
CEILING(-1.5) -1

MySQL - ATAN(), ATAN2()

ATAN(), ATAN2()


ATAN(wartosc1, wartosc2) oraz ATAN2(wartosc1, wartosc2)

Funkcja zwraca arcus tangens dla wyniku dzielenia wartosci1 przez wartosc2 (wartosc1/wartosc2).



Przykład 1:
SELECT ATAN2( 1.5, 1.5 ) ;
Wynik:
ATAN2(1.5,1.5) 0.78539816339745


Przykład 2:

SELECT ATAN2( 2, 2 ) ;
Wynik:
ATAN2(2,2) 0.78539816339745


Przykład 3:
SELECT ATAN( -2 )
Wynik:
ATAN(-2) -1.1071487177941


Przykład 4:
SELECT ATAN( 2000 )
Wynik:
ATAN(2000) 1.5702963268366


UWAGA!!!
Dla funkcji ATAN i tekstu wynikiem będzie 0.

Przykład 5:
SELECT ATAN( 'tekst' )
Wynik:
ATAN('tekst') 0

MySQL - ATAN

ATAN()


ATAN(wartosc)

Funkcja zwraca arcus tangens dla podanej wartosci.



Przykład 1:
SELECT ATAN( 1 )
Wynik:
ABS(1) 0.78539816339745


Przykład 2:
SELECT ATAN( 0.5 )
Wynik:
ATAN(0.5) 0.46364760900081


Przykład 3:
SELECT ATAN( -2 )
Wynik:
ATAN(-2) -1.1071487177941


Przykład 4:
SELECT ATAN( 2000 )
Wynik:
ATAN(2000) 1.5702963268366


UWAGA!!!
Dla funkcji ATAN i tekstu wynikiem będzie 0.

Przykład 5:
SELECT ATAN( 'tekst' )
Wynik:
ATAN('tekst') 0

piątek, 4 listopada 2011

MySQL - ASIN

ASIN()


ASIN(wartosc)

Funkcja zwraca arcus sinus dla podanej wartosci.
UWAGA!!!
Jeżeli wartość nie należy do przedziału <-1,1> funkcja zwróci NULL.


Przykład 1:

SELECT ASIN( 1 )
Wynik:
ABS(1) 1.5707963267949


Przykład 2:
SELECT ASIN( 0.5 )
Wynik:
ASIN(0.5) 0.5235987755983


Przykład 3:
SELECT ASIN( -2 )
Wynik:
ASIN(-2) NULL


Przykład 4:
SELECT ASIN( 2 )
Wynik:
ASIN(2) NULL


UWAGA!!!
Dla funkcji ASIN i tekstu wynikiem będzie 0.

Przykład 5:
SELECT ASIN( 'tekst' )
Wynik:
ASIN('tekst') 0

MySQL - ACOS

ACOS()


ACOS(wartosc)

Funkcja zwraca arcus cosinus dla podanej wartosci.
UWAGA!!!
Jeżeli wartość nie należy do przedziału <-1,1> funkcja zwróci NULL.


Przykład 1:
SELECT ACOS( 0.5 )
Wynik:
ACOS(0.5) 1.0471975511966


Przykład 2:
SELECT ACOS( -2 )
Wynik:
ACOS(-2) NULL


Przykład 3:
SELECT ACOS( 2 )
Wynik:
ACOS(2) NULL


UWAGA!!!
Dla funkcji ACOS i tekstu wynikiem będzie 0.

Przykład 4:

SELECT ACOS( 'tekst' )
Wynik:
ACOS('tekst') 0

MYSQL - ABS

ABS(wartosc)

Funkcja zwraca wartość bezwzględną "wartosc".


Przykład 1:

SELECT ABS(1)
Wynik:
ABS(1) 1

Przykład 2:

SELECT ABS( -500 )
Wynik:
ABS(-500) 500



UWAGA!!!
Dla funkcji ABS i tekstu wynikiem będzie 0.


Przykład 3:
SELECT ABS( 'tekst' )
Wynik:
ABS('tekst') 0