SQL:N PERUSTEET OSIO 03 MARKKU SUNI



Samankaltaiset tiedostot
Koostefunktiot. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

KOOSTEFUNKTIOT. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

SELECT-lauseen perusmuoto

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]

TIEDONHALLINTA - SYKSY Luento 8. Saapumisryhmä: Pasi Ranne /9/13 Helsinki Metropolia University of Applied Sciences

2. Haet työntekijöiden tiedot etunimen mukaan nousevasti järjestettyinä. (ORDER BY) SELECT * FROM employees ORDER BY firstname ASC;

SQL:N PERUSTEET MARKKU SUNI

SQL:N PERUSTEET MARKKU SUNI

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

Funktionimien kuormitus. TIES341 Funktio ohjelmointi 2 Kevät 2006

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

TIEA341 Funktio-ohjelmointi 1, kevät 2008

TIETOKANTOJEN PERUSTEET MARKKU SUNI

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki

SQL - STRUCTURED QUERY LANGUAGE

OpenOffice.org Base 3.1.0

HELIA 1 (14) Outi Virkki Tiedonhallinta

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python

Kyselyn yleisrakenne:

Joko tunnet nämän Oracle10g SQL:n piirteet? Kari Aalto Saariston IT

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX

3. Taulujen määrittely ja muuttaminen

CSE-A1200 Tietokannat

3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN

3.1 Mitä tarkoittaan heredoc? Milloin sitä kannattaa käyttää? Kirjoita esimerkki sen käyttämisestä.

6 Eksponentti- ja logaritmifunktio

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

Harjoitustehtävä 1. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. SQL kysely

Testaa taitosi Piirrä yksikköympyrään kaksi erisuurta kulmaa, joiden a) sini on 0,75 b) kosini on

Luvuilla laskeminen. Esim. 1 Laske

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Ohjelmoinnin peruskurssi Y1

PHP tehtävä 3 Atte Pekarinen TIKT13A

Ohjelmoinnin peruskurssi Y1

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python

HELIA 1 (14) Outi Virkki Tiedonhallinta

Pyramidi 9 Trigonometriset funktiot ja lukujonot HK1-1. Dsin3 x. 3cos3x. Dsinx. u( x) sinx ja u ( x) cosx. Dsin. Dsin

Harjoitus 2 (viikko 45)

Ohjelmoinnin perusteet Y Python

Johdatus f90/95 ohjelmointiin. H, R & R luvut 1-3

Ohjelmointi 1 C#, kevät 2013,

Funktion määrittely (1/2)

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Tehtävä 1. Tietojen lisääminen, poistaminen, päivittäminen ja tulostaminen

SISÄLTÖ. Vuokko Vanhala-Nurmi, 2009 Excel jatko

Liitokset - haut useaan tauluun

Java-kielen perusteet

Ohjelmoinnin perusteet Y Python

Java-kielen perusteet

MS-A010{3,4} (ELEC*) Differentiaali- ja integraalilaskenta 1 Luento 6: Alkeisfunktioista

2 Funktion derivaatta

TIEA341 Funktio-ohjelmointi 1, kevät 2008

Tiedonhallinnan perusteet. H11 Ovien ja kulun valvontajärjestelmän tietokanta

Ohjelmoinnin peruskurssi Y1

CSE-A1200 Tietokannat

Trigonometriset funk4ot

Kaikkia alla olevia kohtia ei käsitellä luennoilla kokonaan, koska osa on ennestään lukiosta tuttua.

Kolmiot, L1. Radiaani. Kolmiolauseet. Aiheet. Kulmayksiköt, aste. Radiaani. Suorakulmainen kolmio. Kolmiolauseet

Suurten asiakasriskien ilmoittamiseen liittyvät konekielisen tietojenvälityksen ohjeet

Fysiikan matematiikka P

17. Javan omat luokat 17.1

CSE-A1200 Tietokannat

Ohjelmointi 1 C#, kevät 2013, 2. tentti

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

Olkoon funktion f määrittelyjoukkona reaalilukuväli (erityistapauksena R). Jos kaikilla määrittelyjoukon luvuilla x 1 ja x 2 on voimassa ehto:

Tietotyypit ja operaattorit

Java-kielen perusteet

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Tällä viikolla. Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä

Ohjelmoinnin peruskurssi Y1

VINKKI: Katso Kentät Muistioon -painikkeella, mikä on taulukon nimen oikea kirjoitusasu.

A = (a 2x) 2. f (x) = 12x 2 8ax + a 2 = 0 x = 8a ± 64a 2 48a x = a 6 tai x = a 2.

TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

MS-A0102 Differentiaali- ja integraalilaskenta 1

Access-kyselyt. Luetteloinnin kehittämispäivä Mia Kujala

ASTERI-OHJELMIEN SQL-ERIKOISKURSSI LUENTOKALVOT

ITKP102 Ohjelmointi 1 (6 op)

Sinin jatkuvuus. Lemma. Seuraus. Seuraus. Kaikilla x, y R, sin x sin y x y. Sini on jatkuva funktio.

Tyyppejä ja vähän muutakin. TIEA341 Funktio ohjelmointi 1 Syksy 2005

Integroimistekniikkaa Integraalifunktio

KAAVAT. Sisällysluettelo

Ohjelmoinnin perusteet Y Python

Excel funktiot. Sisällys

17. Javan omat luokat 17.1

Choose Finland-Helsinki Valitse Finland-Helsinki

SQL-kielen perusteet. Tietokantojen perusteet


Ohjelmassa on käytettävä funktiota laskeparkkimaksu laskemaan kunkin asiakkaan maksu. Funktio floor pyöristää luvun lähimmäksi kokonaisluvuksi.

20. Javan omat luokat 20.1

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

0. Kertausta. Luvut, lukujoukot (tavalliset) Osajoukot: Yhtälöt ja niiden ratkaisu: N, luonnolliset luvut (1,2,3,... ) Z, kokonaisluvut

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

HELIA TIKO-05 1 (15) ICT03D Tieto ja tiedon varastointi Räty, Virkki

etunimi, sukunimi ja opiskelijanumero ja näillä

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 SQL:n perusteet. Harri Laine 1. SQL tietokantakieli. SQL tietokantakieli

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

Ruokahalu kasvaa syödessä lisää makrokielen herkkuja

Transkriptio:

SQL:N PERUSTEET OSIO 03 MARKKU SUNI

SQL - KIELI FUNKTIOT ELI SAADUN TIEDON JATKOKÄSITTELYÄ MARKKU SUNI

Tarkastellaan Koostefunktioita Päiväys- ja kellonaikafunktioita Aritmeettisia funktioita Merkkifunktioita Muuntofunktioita Eräitä muita funktioita

Funktio on etukäteen määritelty kuvaus, joka annettujen tietojen perusteella palauttaa tuloksen. Matematiikassa esim. sini, kosini, tangentti, jne. SQL: funktio antaa jonkin määritellyn tuloksen kyselyn tuloksessa olevien tietojen perusteella Yleensä nimenomaan kyselyn tuloksesta ei kannan sisällöstä

Funktioita on määritelty SQL-standardissa melkoinen joukko. Tuotteiden myyjät ovat lisänneet omiaan helpottaakseen ja tehostaakseen tuotteidensa käyttöä. Kurssilla olisi hyvä esittää ensin standardin mukaiset funktiot, sitten lisäyksiä.

Funktioita on määritelty SQL-standardissa melkoinen joukko. Koska osoittautui melko vaikeaksi saada esille luotettava SQL-standardi, otin esiin IBM:n manuaalin, joka esittelee SQL-standardia ja siitä funktioiden luettelon. IBM sentään kehitti ensimmäisen SQL-tuotteen.

ABS or ABSVAL ACOS ASCII ASIN ATAN ATAN2 AVG BIGINT, returning integer values BLOB

CEIL or CEILING CHAR, use in datetime conversion CHR CLOB COALESCE CONCAT CONCAT or COS COT

DATE, returning dates from values DAY, returning day part of value DAYNAME DAYOFMONTH DAYOFWEEK DAYOFYEAR DAYS, returning integer durations DBCLOB DECIMAL or DEC, returning decimal equivalents DEGREES DEREF DIFFERENCE DIGITS

DLCOMMENT, comment from DATALINK value DLLINKTYPE, linktype from DATALINK value DLURLCOMPLETE, complete URL from DATALINK value DLURLPATH, path and file name from DATALINK value DLURLPATHONLY, extracting path and file name from DATALINK value DLURLSCHEME, extracting scheme from DATALINK value DLURLSERVER, extracting file server from DATALINK value DLVALUE, building a DATALINK value

DOUBLE or DOUBLE_PRECISION DOUBLE, returning floating point values EVENT_MON_STATE, returning event monitor states EXP FLOAT, returning floating point values FLOOR GENERATE_UNIQUE GRAPHIC GROUPING HEX HOUR, returning hour part of values INSERT INTEGER or INT, returning integer values JULIAN_DAY

LCASE LEFT LENGTH, length values from expressions LN LOCATE LOG LOG10 LONG_VARCHAR LONG_VARGRAPHIC LTRIM

MICROSECOND, returning microsecond part of values MIDNIGHT_SECONDS MINUTE, returning minute part of values MOD MONTH, returning month part of values MONTHNAME NODENUMBER NULLIF PARTITION POSSTR POWER QUARTER

RADIANS RAISE_ERROR RAND REAL, returning floating point values REPEAT REPLACE RIGHT ROUND RTRIM

SECOND, returning second from values SIGN SIN SMALLINT, returning small integer values SOUNDEX SPACE SQRT SUBSTR, returning substring from string

TABLE_NAME TABLE_SCHEMA TAN TIME, using time in an expression TIMESTAMP, returning timestamp from values TIMESTAMPDIFF TIMESTAMP_ISO TRANSLATE TRUNC or TRUNCATE TYPE_ID TYPE_NAME TYPE_SCHEMA

UCASE VALUE, returning non-null result VARCHAR VARGRAPHIC WEEK YEAR, returning values based on year

Tarkastellaan joitakin funktioita ja niiden käyttöä SQL-kyselyissä Esimerkit on suoritettu Microsoft Accessin SQLkielellä ja Northwind-tietokannalla.

Funktio COUNT laskee niiden rivien määrän, jotka täyttävät WHEREosiossa annetun ehdon SELECT COUNT( * ) FROM asiakkaat; 91 SELECT COUNT(*) FROM asiakkaat WHERE maa = Suomi ; 2 SELECT count(*) 7 from asiakkaat WHERE maa IN ('Suomi', 'Ruotsi', 'Tanska', 'Norja');

Funktio COUNT laskee myös mainitulle sarakkeelle niiden rivien määrän, jotka täyttävät WHERE-osiossa annetun ehdon SELECT COUNT( maa ) FROM asiakkaat; 91 SELECT COUNT( maa ) FROM asiakkaat WHERE maa = Suomi ; 2 SELECT count( maa ) 7 from asiakkaat WHERE maa IN ('Suomi', 'Ruotsi', 'Tanska', 'Norja');

Funktio COUNT SELECT COUNT( alue ) FROM asiakkaat; 31 SELECT COUNT( alue ) FROM asiakkaat WHERE alue IS NULL; 0 SELECT count( alue ) 31 from asiakkaat WHERE alue IS NOT NULL; SELECT count( maa ) 60 from asiakkaat WHERE alue IS NULL;

Funktio COUNT ja sen yhdistetty käyttö SELECT DISTINCT( alue ) FROM asiakkaat UNION SELECT COUNT( alue ) FROM asiakkaat ; alue 31 AK BC CA Co. Cork DF ID Isle of Wight Lara MT NM Nueva Esparta OR Québec RJ SP Táchira WA WY

Funktio SUM laskee sarakkeen lukujen summan SELECT SUM( rahti) FROM tilaukset;

Funktio SUM laskee sarakkeen lukujen summan SELECT SUM( rahti) FROM tilaukset; SELECT asiakastunnus, rahti, rahti*1.22 AS verollinen, SUM( rahti) FROM tilaukset EI ONNISTU!! ; No, mutta miksi ei??

SELECT rahti, rahti*1.22 AS verollinen FROM tilaukset UNION SELECT sum(rahti), sum(rahti*1.22) AS verollinen FROM tilaukset ; rahti verollinen 0,09 mk 0,1098 0,54 mk 0,6588 0,63 mk 0,7686... 3 645,23 mk 4447,1745 3 738,38 mk 4560,8175 4 008,51 mk 4890,3822 4 534,38 mk 5531,9436 292 242,11 mk 356535,3681 siinä se summa

Ja luonnollisen loogisesti: SELECT sum(rahti), sum(rahti*1.22) AS verollinen FROM tilaukset WHERE rahti > 1000 ;

Keskimääräinen rahti: SELECT sum(rahti)/count(rahti), sum(rahti*1.22)/count(rahti*1.22) AS verollinen FROM tilaukset ; Expr1000 verollinen 352,098921686747 429,560684457831

Keskimääräinen rahti toisin funktio AVG: SELECT AVG(rahti), AVG(rahti*1.22) AS verollinen FROM tilaukset ; Expr1000 verollinen 352,10 mk 429,560684457831 Vertailun vuoksi edellisen kalvon tulos: Expr1000 verollinen 352,098921686747 429,560684457831

Sarakkeen suurin arvo funktio MAX: SELECT MAX(rahti), MAX(rahti*1.22) AS verollinen FROM tilaukset ; Expr1000 verollinen 4 534,38 mk 5531,9436 Ulkoasu: MAX(rahti) on tulos sarakkeen luvuista sitä koskee sarakkeen muotoilu lasketulle sarakkeelle ei ole annettu muotoiluohjetta

Sarakkeen pienin arvo funktio MIN: SELECT MIN(rahti), MIN(rahti*1.22) AS verollinen FROM tilaukset ; SELECT min( yritys ) FROM asiakkaat; Expr1000 Alfreds Futterkiste Merkkijonoille aakkosjärjestys!!

Sarakkeen pienin ja suurin arvo funktioilla: SELECT min( yritys ), max( yritys), count(yritys) FROM asiakkaat; Expr1000 Expr1001 Expr1002 Alfreds Futterkiste Wolski Zajazd 91

SQL:n ANSI-standardissa on määritelty funktiot COUNT, SUM, MAX, MIN, AVG. Standardinomaisesti useimmat tuotteet tuntevat myös funktiot VARIANCE - varianssin laskeminen STDEV - standardihajonta, keskihajonta Nimitys voi vaihdella; MS Access käyttää nimeä VAR varianssista Dstdev hajonnasta

Päivämäärä- ja aikafunktioita Useimmissa SQL-tuotteissa on DATE-tyyppi, mutta sen täsmällinen esitysmuoto (ja talletusmuoto) saattaa vaihdella.

Päivämäärä- ja aikafunktioita Useimmissa SQL-tuotteissa on DATE-tyyppi, mutta sen täsmällinen esitysmuoto (ja talletusmuoto) saattaa vaihdella. Löytyy myös TIME-tyyppi samoin huomautuksin Tietokannoissa oleellinen tyyppi on TIMESTAMP eli aikaleima: päivämäärä ja kellonaika yhdistettynä

Päivämäärä- ja aikafunktioita DATE, DAY, DAYNAME, DAYOFMONTH number 1 31 DAYOFWEEK number 1-7 returning dates from values returning day part of value eg. Friday DAYOFYEAR number 1-366 DAYS, returning integer durations

Päivämäärä- ja aikafunktioita HOUR, returning hour part of values MICROSECOND, returning microsecond part of values MIDNIGHT_SECONDS MINUTE, returning minute part of values MONTH, returning month part of values MONTHNAME e.g. January SECOND, returning second from values TIME, using time in an expression TIMESTAMP, returning timestamp from values TIMESTAMPDIFF TIMESTAMP_ISO

Päivämäärä- ja aikafunktioita ORACLE tuntee seuraavat: ADD_MONTHS( päiväys, luku) luku ilmoittaa montako kuukautta lisätään päiväykseen päiväys voi olla vakiopäivämäärä, sarakkeella lausekkeen tulos LAST_DAY( päiväys ) ilmoittaa ko. kuukauden viimeisen päivän päiväyksen MONTHS_BETWEEN( päiväys1, päiväys2 ) ilmoittaa ko. päiväysten välisten kuukausien määrän negatiivisena, jos päiväys1 on aikaisempi

Päivämäärä- ja aikafunktioita ORACLE tuntee seuraavat: NEXT_DAY( päiväys, viikonpäivä ) ilmoittaa ensimmäisen annettua päiväystä seuraavan (tai saman) ko. viikonpäivää vastaavan päiväyksen NEXT_DAY( toimituspäivämäärä, FRIDAY ) SYSDATE ilmoittaa järjestelmän senhetkisen päiväyksen ja ajan

MS ACCESS tuntee seuraavat: AIKA-funktio AIKA_ARVO-funktio KUUKAUSI-funktio KUUKAUSI.LOPPU-funktio MINUUTTI-funktio NYT-funktio PÄIVÄ-funktio PÄIVÄ.KUUKAUSI-funktio PÄIVÄT360-funktio

MS ACCESS tuntee seuraavat: PÄIVÄYS-funktio PÄIVÄYSARVO-funktio SEKUNNIT-funktio TUNTI-funktio TYÖPÄIVÄ-funktio TYÖPÄIVÄT-funktio TÄMÄ.PÄIVÄ-funktio VIIKONPÄIVÄ-funktio VUOSI-funktio VUOSI.OSA-funktio

MS ACCESS tuntee seuraavat: AIKA(tunnit;minuutit;sekunnit) Palauttaa annettua aikaa vastaavan luvun. Funktio palauttaa desimaaliluvun 0 0,99999999, joka vastaa aikaa 0:00:00 23:59:59. Tunnit on luku 0 23, joka vastaa tunteja. Minuutit on luku 0 59, joka vastaa minuutteja. Sekunnit on luku 0 59, joka vastaa sekunteja.

MS ACCESS tuntee seuraavat: AIKA_ARVO(aika_teksti) Palauttaa luvun, joka vastaa tekstimuotoista aikaa. Aika_teksti on tekstimerkkijono, joka määrittää ajan jossakin ajan esitysmuodoista, kuten muodossa 18:45. Päivämäärätietoja ei oteta huomioon.

MS ACCESS tuntee seuraavat: AIKA_KUUKAUSI(aloituspäivä;kuukaudet) Palauttaa järjestyslukuna päivämäärän, joka poikkeaa aloituspäivämäärästä annetun kuukausimäärän verran eteen- tai taaksepäin. Aloituspäivästä lasketaan annetun kuukausimäärän verran eteen- tai taaksepäin. Kuukausien määrän antaa kuukaudetargumentti. Kuukaudet on kuukausimäärä ennen aloituspäivämäärää tai sen jälkeen. Arvo on positiivinen tulevissa päivämäärissä ja negatiivinen edeltävissä päivämäärissä.

MS ACCESS tuntee seuraavat: Lisätietoja: ACCESSin HELP-toiminto ja käsikirjat

ARITMEETTISET funktiot ABS - luvun itseisarvo CEIL - pienin kokonaisluku, >= funktion parametri FLOOR suurin kokonaisluku, <= funktion parametri COS, COSH, SIN, SINH, TAN, TANH tutut trigonometriset funktiot argumentti (parametri) radiaaneina EXP e argumentin potenssiin LN, LOG - argumentin luonnollinen tai Briggsin logaritmi

ARITMEETTISET funktiot MOD - modulus, jakojäännös MOD( 5, 2 ) = 1 MOD( 5, 7 ) = 5 POWER argumentti potenssiin SIGN 1, 0, -1 jos argumentti on >0, =0, < SQRT - neliöjuuri

MERKKIJONOfunktiot Merkkijonofunktiot toimivat merkkijonoille ja antavat tuloksenaan merkkijonon, luvun tai totuusarvon Merkkijonoille tyypillisiä operaatioita: Jonon katkaisu osajono osajonon haku jonon tasaaminen vasempaan tai oikeaan merkkien korvaaminen toisilla

MERKKIJONOfunktiot CHR saa argumenttinaan luvun, jota vastaavan merkin palauttaa Laitteiston koodiston mukaan (EBCDIC, ASCII) SELECT rahti, CHR( 61 ), rahti*1.22 AS verollinen, CHR( 41 ) FROM tilaukset; rahti Expr1001 verollinen Expr1003 145,71 mk = 177,7662 ) 52,25 mk = 63,7389 ) 296,24 mk = 361,4067 )

MERKKIJONOfunktiot CONCAT saa kaksi argumenttia, jotka konkatenoi sama operaatio kuin operaattorilla SELECT concat( etunimi, sukunimi ) FROM nimet;

MERKKIJONOfunktiot INITCAP asettaa argumenttinsa ensimmäisen merkin suureksi, muut pieniksi LCASE muuttaa argumenttinsa kirjaimet pieniksi joissakin systeemeissä LOWER UCASE muuttaa argumenttinsa kirjaimet suuriksi joissakin systeemeissä UPPER SELECT rahti, lähetysmaa FROM tilaukset WHERE UCASE( lähetysmaa ) = SAKSA ;

MERKKIJONOfunktiot Esim. Oraclen LPAD ja RPAD lisäävät merkkejä merkkijonon vasempaan (oikeaan) laitaan. Tulos on pitempi kuin merkkijono alun perin LPAD( Lähetysmaa, 10, * ) **********Saksa **********Suomi RPAD( Lähetysmaa, 10, * ) Saksa ********** Suomi **********

MERKKIJONOISTA Merkkijonon operaatiot ottavat huomioon pituuden, joskin tapa voi vaihdella Vertailuissa, kopioinneissa yleensä täytetään blankoilla lähtömaa > tulomaa Suomi > Etelä-Afrikka

LTRIM ja RTRIM poistavat merkkijonoista (vasemmalta, oikealta) haluttuja merkkejä. Oletuksena blankko RPAD( RTRIM( Lähetysmaa ), 10, * ) Saksa********** Suomi********** Sveitsi********* LTRIM( Lähetysmaa, S ) aksa uomi veitsi

REPLACE korvaa merkkijonoissa merkkijonoja toisilla. Ellei korvaavaa jonoa anneta, oletetaan se NULLiksi ja vain poistetaan löytyneet merkkijonot REPLACE( hintaselitys, ON EUR, MARKK ) HINTA ON EUROINA HINTA MARKKOINA REPLACE( hintaselitys, EUROINA ) HINTA ON EUROINA HINTA ON

SUBSTR poimii merkkijonosta osajonon. Parametreina alkupositio ja pituus. kentässä Markku Suni SUBSTR( nimi, 2, 5 ) = arkku SUBSTR( nimi, 8, 3 ) = uni

Oh, that I were where I would be Then, would I be where I am But, oh that I am where I must be WhereI wouldbei cannot. On this little lolly day On this little lolly day Oi, valita jos mie voisin, niin josko täällä mie oisin? Ei, mutta näin minun täytyy Minne tahdon, pääse en. ajan valuessa vaan