CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
20.07.2012, 15:46:46
|
Anfänger
|
|
Registriert seit: Oct 2007
Beiträge: 49
|
|
SQL Platzhalter rückwärts suchen
Hallo liebe Leute,
heute habe ich ein Problem, welches ich nicht einmal genau wüsste, wie ich es googeln sollte. Es geht um folgendes:
Ich habe eine Datenbank über Fahrzeuge. Bei den Fahrzeugen sind einzelne Bauteile zugeordnet, so das die DB weiß, bei Fahrzeug X ist ein Artikel Y zugehörig.
Soweit so gut.
Jetzt kommt der ertse Trick:
Der Artikel Y kann ggf. baugleich von verschiedenen Herstellern kommen, ich definiere das ganze durch Artikelnummern. So kann der Artikel Y die Nummer 1231456, 1232456 oder 1233456 haben, für die 3 Hersteller.
Um das bei einer Suche zu realisieren ist bei dem Fahrzeug in der Spalte für diesen Artikel eine Wildcard gesetzt für SQL, der Unterstrich, in der Spalte steht also 123_456
Funktioniert prima! ;)
Jetzt mein riesen Problem, wie realisiere ich die Rückwärtssuche:
Ich habe den Artikel 1232456 gewählt, will mir raussuchen lassen, welches Fahrzeug dazu gehört. Dummerweise steht in der DB beim Fahrzeug X aber nicht 1232456 drin, sondern 123*456 (der Stern dient zur besseren menschlichen Veranschauung und wird bei der Suche immer durch ein Unterstrich erstezt)
Noch dummer: Das Wildcard kann an unterschidelichen Stellen stehen, aber nie mehr als 2 in einer Artikelnummer (nämlich für Hersteller und Modellart)
WIE suche ich nun?
Menschlich würde ich sagen nach dem Motto:
Fahrzeuge suchen, die in der Spalte XY die größtmögliche Übereinstimmung mit der tatsächlichen Artikelnummer haben!
In der Spalte XY könnte nämlich stehen:
1232456 - gesuchte Nummer
123*456 - Möglichkeit 1
*232*56 - Möglichkeit 2
...
(man weiß also nie, wo die bis zu 2 Wildcards stehen könnten)
Wie soll ich das in SQL formulieren? Jemand eine Idee?
Vielen Dank euch bereits im Voraus.
Gruß
Doc
|
22.07.2012, 19:10:58
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: SQL Platzhalter rückwärts suchen
Zitat:
Zitat von Doc_McSky
Wie soll ich das in SQL formulieren? Jemand eine Idee?
|
Ein gutes Datenbankdesign erspart Dir solche Fragen.
|
24.07.2012, 16:47:48
|
Anfänger
|
|
Registriert seit: Oct 2007
Beiträge: 49
|
|
AW: SQL Platzhalter rückwärts suchen
Hallo meikel,
immer wieder Danke für deine Antworten. Allerdings ist das ja auch nicht die ultimative Lösung immer alles wegzuschmeissen, nur weil gerade etwas nicht so funktioniert wie man es sich in einer perfekten Welt vorstellt.
Es wird da sicher noch einen anderen Ansatz geben, der auch zu realisieren wäre, oder nicht?
Naja, ich zähle auf eure Mithilfe.
|
26.07.2012, 02:28:26
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: SQL Platzhalter rückwärts suchen
Zitat:
Zitat von Doc_McSky
Allerdings ist das ja auch nicht die ultimative Lösung immer alles wegzuschmeissen, nur weil gerade etwas nicht so funktioniert wie man es sich in einer perfekten Welt vorstellt.
|
Jo, es wäre einfacher, wenn Du Dir solche Gedanken vorher machen würdest.
Ein schlechtes Konzept bohrt man nicht zeitintensiv auf - man schmeißt es weg.
Zitat:
Es wird da sicher noch einen anderen Ansatz geben, der auch zu realisieren wäre, oder nicht?
|
Ändere das Konzept so ab, daß das, was Du gerne möchtest, auch problemlos machbar ist. Und lies das MySQL Handbuch.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:59:08 Uhr.
|