# SQL Abfrage " alle namen die mehr als 5 Buchstaben haben"



## boeckerl (10. März 2005)

Ich möchte in meiner SQL Tabelle alle Vornamen herausfiltern die mehr als 5 Buchstaben lang sind.
Kann mir da bitte wer weiterhelfen?   

Der Tabellenname ist z.B. *person* und die Spalte der Tabelle heißt *person_vorname*

select ....?

Vielen Dank schon mal im vorraus!


----------



## redlama (10. März 2005)

Mach's mal so:
	
	
	



```
select `person_vorname` from `person` where length(`person_vorname`) > 5;
```

redlama


----------



## boeckerl (10. März 2005)

Ich erhalte hier die Fehlermeldung:

*Undefinierte Funktion 'lenght' in Ausdruck*

Gibt es vielleicht noch eine andere Möglichkeit?


----------



## redlama (10. März 2005)

Hm, ... dann scheint es diese Funktion in SQL nicht zu geben.
Ich hatte gehofft das es klappt, da es mit MySQL funktioniert!
Schade, aber dann kann ich Dir leider doch nicht helfen! 

redlama


----------



## ManicMarble (10. März 2005)

Eigentlich ganz einfach:

```
SELECT * FROM person WHERE person_vorname LIKE '_____%'
```
(Also 5 Unterstriche und 1 %)

So müsst's eigentlich gehen.
_Martin_

Edit:
Halt, Stop! Du willst ja _mehr_ als 5 Buchstaben, dann also 6 Unterstriche.

Übrigens gibt's die Funktion LENGTH() in MySQL eigentlich schon, redlamas Version müsste also theoretisch schon auch gehen - vorausgesetzt Du verwendest MySQL...


----------



## Nico Graichen (10. März 2005)

Da du nicht angegeben hast, welches DBMS du nutzt, hier noch ein Vorschalg, der auf jeden Fall bei MSSQL funktioniert:
	
	
	



```
SELECT * FROM person WHERE LEN(person_vorname) > 5
```


----------



## Luzie (10. März 2005)

boeckerl hat gesagt.:
			
		

> Ich erhalte hier die Fehlermeldung:
> 
> *Undefinierte Funktion 'lenght' in Ausdruck*
> 
> Gibt es vielleicht noch eine andere Möglichkeit?



*lenght* gibts auch *nicht* als Funktion z.B. wenn Du  mySQL meinst. Das ist ein Tippfehler!
Die Funktion length() gibts allerdings in mySQL, ist aber schon gesagt worden.

In den MS-basierten Datenbanken (Access z.B. ) fragt man mit len() ab.


----------



## blubberer (13. März 2005)

*UND? hat einer der Tipps funktioniert?*

Hallo,

wie wäre es mit einem "Danke Schön, das klappt super!" oder so?
Damit die Leute die versucht haben Dir zu helfen auch wissen, das sie es konnten und für die die eine ähnliche Frage haben damit sie wissen, welches geklappt hat.

Das wäre immer ganz nett in so einem Forum!


----------



## boeckerl (14. März 2005)

Hey Leute, Danke für euer bemühen! Ihr habt mir mir sehr weitergeholfen!


----------

