Results 1 to 9 of 9

Thread: Laatste karakter uit veld verwijderen

  1. #1

    Laatste karakter uit veld verwijderen

    Hallo allemaal,

    Ik gebruik Paradox tabellen, en ik wil even het laatste karakter uit een char veld verwijderen.
    In Delphi zelf zou ik dat doen door iets als
    veld := Copy(veld, 1, Length(veld)-1)

    Maar, ik zou niet weten hoe ik dat in SQL kan doen...
    Ik ben al wel zover dat ik de opdracht SUBSTRING(veld from X to Y) heb gevonden, maar nu zoek ik nog de 'Length' opdracht.

    Dank voor jullie hulp!

    Stefan.

  2. #2
    Senior Member Wok's Avatar
    Join Date
    Dec 2002
    Location
    Alkmaar
    Posts
    2,085
    In mysql doe je het zo:


    mysql> SELECT TRIM(' bar ');
    -> 'bar'
    mysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx');
    -> 'barxxx'
    mysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx');
    -> 'bar'
    mysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz');
    -> 'barx'
    10.4.2, Delphi2010, of Lazarus 2.2.0

  3. #3
    Senior Member Henk Schreij's Avatar
    Join Date
    Sep 2002
    Location
    Heino (Raalte)
    Posts
    1,465
    Ik zou niet weten hoe dat in Paradox-SQL moet.
    Bijv. de 2e letter is wel heel gemakkelijk met (vb uit Employee tabel van DBDemos)
    sql Code:
    1. SELECT SUBSTRING(LastName FROM 2 FOR 1) FROM Employee
    Maar Paradox ondersteunt niet de LEN en de REVERSE functie. Helaas.
    Ik denk dat je het in Delphi moet doen.

  4. #4
    Heet die functie niet gewoon Length?
    1+1=b

  5. #5
    Senior Member Henk Schreij's Avatar
    Join Date
    Sep 2002
    Location
    Heino (Raalte)
    Posts
    1,465
    Nee, LENGTH kent Paradox niet.

    LEN levert een 'Capability not supported' message
    REVERSE idem.

  6. #6
    maar nu zoek ik nog de 'Length' opdracht.
    Als ik het goed voorheb zijn de velden altijd even lang, dus heb je aan deze functie ook niet veel. Ik denk niet dat er veel mogelijkheden overblijven.
    De verbazing begint waar de kennis ophoudt

  7. #7
    Senior Member Henk Schreij's Avatar
    Join Date
    Sep 2002
    Location
    Heino (Raalte)
    Posts
    1,465
    Als het een vaste veldlengte is, dan weet je die. Bijv. is die altijd 10 lang.
    Dan is met de volgende code de invulling zonder het laatste teken te vinden:
    Sql Code:
    1. SELECT SUBSTRING(LastName FROM 1 FOR 9) FROM Employee
    Maar ik vermoed dat de veldlengte niet constant is

  8. #8
    Ofwel is een calculated field een oplossing.
    De verbazing begint waar de kennis ophoudt

  9. #9
    Met TRIM leek ik een oplossing gevonden te hebben, maar aangezien het laatste karakter niet bekend is werkt dit commando niet.

    De veldlengte is inderdaad wisselend (en dus niet bekend).

    Waarschijnlijk rest mij niets anders dan een Copy(String,Van,Tot) opdracht in Delphi...

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •