Avatar billede fredeb Nybegynder
29. december 2004 - 11:28 Der er 10 kommentarer

Jeg ønsker at finde alle poster der har < 10 karakterer i en teks

Hej jeg ønsker at finde de poster der har < 10 karakterer i en tabel i en oracle database for et bestemt tekstfelt med en sql søgning hvordan gør jeg det
Avatar billede arne_v Ekspert
29. december 2004 - 11:31 #1
prøv:

WHERE LENGTH(felt) < 10
Avatar billede fredeb Nybegynder
29. december 2004 - 11:43 #2
Virker ikke helt får følgende fejl ORA-00932: inkonsistente datatyper: forventede NUMBER fik LONG
Avatar billede arne_v Ekspert
29. december 2004 - 21:19 #3
Hvad data type er dit felt ?

(hvis det er en tal type skal det først castes til en streng type)
Avatar billede fredeb Nybegynder
30. december 2004 - 07:11 #4
Feltet har datatypen LONG altså et notat felt
Avatar billede arne_v Ekspert
30. december 2004 - 10:59 #5
Ups. Problem.

Jævnfør f.eks.: http://www.arikaplan.com/oracle/ari80597b.html
Avatar billede arne_v Ekspert
30. december 2004 - 10:59 #6
PS: Skulle det LONG felt ikke konverteres til en passende LOB ?
Avatar billede fredeb Nybegynder
30. december 2004 - 11:16 #7
Det ser ud til at det måske kan løses med pl/sql i følge dit link
Jeg har godtnok aldrig prøvet at arbejde i pl/sql men det må jeg jo så prøve er nok først tilbage efter nytår men foreløbig tak
Avatar billede arne_v Ekspert
04. januar 2005 - 21:25 #8
Har du fået det til at virke ?

Og et svar såfremt ...
Avatar billede fredeb Nybegynder
05. januar 2005 - 08:00 #9
Har fået en løsning andetsteds fra se nedenstående

spool add_text_length


create or replace function add_text_length
(p_ADD_CODE varchar2, p_ADD_RENTITY varchar2, p_ADD_TYPE varchar2, p_ADD_LANG varchar2, p_ADD_LINE number)
return number as

  v_add_text    varchar2(32767);

  cursor c_add_text is
  SELECT ADD_TEXT
  FROM ADDETAILS
  WHERE add_code = p_add_code
    and add_rentity = p_add_rentity
    and add_type = p_add_type
    and add_lang = p_add_lang
    and add_line = p_add_line;

begin

  open c_add_text;

  fetch c_add_text
  into v_add_text;

  close c_add_text;

  return (LENGTH(v_ADD_TEXT));

end;
/

spool off

opretter en liste over poster
Avatar billede pgroen Nybegynder
08. juni 2005 - 12:27 #10
OK, men kunne du ikke lige acceptere dit eget svar,
så vi kan få den her lukket ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester