numerische werte

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
guten tag forum,

kennt jemand den sql befehl womit ich die daten wegsortieren kann die nummerische werte enthalten wie z.B A38JUZ? Also nur wenn in der Selection reiner text drin ist wie AKLTRE, soll eingelesen werden.

Vielen dank

L-ectron-X hat das Thema verschoben.
 

DP

Top Contributor
quick&dirty in mysql würde ich sagen

"...where (substr(spalte, '0') = 0 and substr(spalte, '1') = 0 and substr(spalte, '2') = 0 and substr(spalte, '3') = 0 and substr(spalte, '4') = 0 and substr(spalte, '5') = 0 and substr(spalte, '6') = 0 and substr(spalte, '7') = 0 and substr(spalte, '8') = 0 and substr(spalte, '9') = 0)..."
 

robertpic71

Bekanntes Mitglied
Hier noch ein Lösungsvorschlag (aber auch nicht gerade ein Muster für Schulungsunterlagen...)

select ..... where feld not like '%0%' and feld not like '%1%' and feld not like '%2%' and feld not like '%3%' and feld not like '%4%' and feld not like '%5%' and feld not like '%6%' and feld not like '%7%' and feld not like '%8%' and feld not like '%9%'

Die Abfrage sollte für alle gängigen Datenbanken funktionieren.

Elegantere Lösungen sind aufwändiger und nicht mehr für alle Datenbanken zu gebrauchen (..außer ich irgendeine Möglichkeit vergessen).

LG Rob
 
G

Gast

Gast
Erst mal vielen Danke für die Antworten.
Ich arbeite mit MYSQL. Da ich bei dieser Selection ungefähr 300000 Datensätze rauspicken muss, ist es ziemlich aufwendig mit deinem Befehl zu arbeiten Robert, da eine Selection etwa 0,20 Sekunden dauert. Muss mich nach Lösung wie NOT LIKE '[0-9]' umschauen, hab bisher zig mal ausprobiert, ohne Erfolg...
oder kennt das einer bereits? :bahnhof:

Danke für jeden Tip
 

Bleiglanz

Gesperrter Benutzer
auch in mysql gibts regexe mit REGEXP

oder auch

WHERE NOT (FIND_IN_SET(spalte,'0,1,2,3,4,5,6,7,8,9')>0)
 

robertpic71

Bekanntes Mitglied
Wenn es nicht stört, dass es nicht bei jeder DB läuft, gibt es auch noch:

select ..... where feld not rlike '[0-9]'

bzw.

select ..... where feld not regexp '[0-9]'


Solange du bei MySQL bleibts solltest du damit kein Problem haben.

Noch ein Frage: Was dauert 0,20 Sekunden? Das interpretieren?

Bei oft verwendeten/langen SQL-Anweisungen kann hier ein PreparedStatement sinnvoll sein. In diesem Fall spart sich der Server das interpretieren der SQL-Anweisungen.

Wenn du nicht alle Sätze abarbeiten willst, solltest du eventuell auch an Limitieren der Sätze denken. Ich meide zwar MySQL, aber es wird dort auch nicht anders sein, dass hier alle Sätze vorbereitet werden.

LG Rob
 
G

Gast

Gast
Danke schön Robertpic71 und an all Anderen die hier schrieben,

Robertpic71, dein Vorschlag mit REGEXP '[0-9]' funktioniert einwandfrei. So, nun zu deiner Frage was 0,20 sec dauert:
nämlich dein erster Vorschlag mit
select ..... where feld not like '%0%' and feld not like '%1%'...

preparedStatement benutze ich ja schon, und ich sortiere ja schon "nur" 1000 Datensätze pro gefundenem Eintrag. in 8 Tabellen mit etwa 100 gefundene (dinstict) verschieden Einträge, jeweils 1000 letze Datensätze von jedem Eintrag. Da muss man schon aufpassen dass man nichts falsch macht damit es nicht zu lange dauert. jetzt schon dauert es so um die 20 min.

nochmals vielen dank :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Ataria SQLite Werte aus zwei Tabellen zusammenführen Datenbankprogrammierung 8
J Mehrere WHERE Werte benutzen Datenbankprogrammierung 2
P Null Werte bei der Normalisierung Datenbankprogrammierung 2
J keine Werte vom PHP Datenbankprogrammierung 3
Dimax MySQL 10 höchsten Werte aus einer Tabelle ermitteln Datenbankprogrammierung 30
L Java- Zähle alle Werte aus der Tabelle von aktiver Zelle Datenbankprogrammierung 12
MaxG. Datenbank werte vergleichen Datenbankprogrammierung 5
E Wie kann man in DB2 TIMESTAMP Werte hinzufügen? Datenbankprogrammierung 2
OnDemand SQL Query Anzahl der Werte Datenbankprogrammierung 8
ruutaiokwu sql server werte swappen beim update-vorgang mit unique-constraints..? Datenbankprogrammierung 2
S MySQL Nach wiederholtem Update falsche Werte (im Speicher?) Datenbankprogrammierung 1
L Werte in Datei speichern Datenbankprogrammierung 16
H MySQL Werte eines Datensatzes in einen anderen kopieren Datenbankprogrammierung 2
J Access Datenbank mit JAVA erstellen - boolean Werte Datenbankprogrammierung 4
E Werte auslesen Datenbankprogrammierung 3
D Alle Werte aus DB auslesen und in Chart darstellen Datenbankprogrammierung 6
pg1337 PostgreSQL Werte auf Eingabe speichern Datenbankprogrammierung 23
Z MySQL werte von formular speichern Datenbankprogrammierung 3
S Werte aus Datenbank auslesen und in eine bestimmte Excelzelle eintragen Datenbankprogrammierung 2
E Update DB; Werte aus Feldern übernehmen Datenbankprogrammierung 5
N Zwei Spalten und Ihre Werte vergleichen Datenbankprogrammierung 3
J SQL Abfrage: Verschiedene Werte in einer Spalte mit einem Update Befehl? Datenbankprogrammierung 7
D Werte mit java programm in eine Datenbank einlesen Datenbankprogrammierung 7
Landei Mehre Werte für einen Prepared-Statement_Parameter übergeben? Datenbankprogrammierung 3
G Einheitliches Casting für Decimal und Integer-Werte Datenbankprogrammierung 5
G Werte in DB multiplizieren Datenbankprogrammierung 5
A JList nimmt nicht alle Werte aus der DB auf Datenbankprogrammierung 3
Y Hibernate - Werte aus 2 Tabellen laden Datenbankprogrammierung 29
G Hilfe: Werte sind alle x2 (oder mehr) nach JOIN Datenbankprogrammierung 13
F JDBC Abfrage Werte auslesen Datenbankprogrammierung 2
E Vergleichen von datetime mit GregorianCalender-Werte Datenbankprogrammierung 6
K [hibernate] show_sql: Werte der Parameter anzeigen Datenbankprogrammierung 3
P MYSQL werte aus liste auslesen und anderen damit updaten Datenbankprogrammierung 4
V Werte über Konsole in Datenbank schreiben Datenbankprogrammierung 2

Ähnliche Java Themen


Oben