tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Yaslaw
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
295
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Hi Leute,
    vielleicht habt ihr eine Idee:
    Bei unserem Telefonnummern Suchprogramm sieht die SQL-Abfrage so aus:
    Code :
    1
    
    SELECT distinct cid, cfirstname,clastname, cmobile, name1, anr FROM Contact left join address on contact.canr = address.anr WHERE cmobile like '%9%9%9%9%'

    Das klappt soweit gut, nur ist gewünscht, dass Nummern, die besser passen als andere, zuerst dargestellt werden.
    Also in Etwa so:

    9999
    99199
    9191919

    etc.
    Ich glaube ihr seht, was ich meine.
    Da es recht grosse Listen gibt, wäre es doch sehr hinderlich, wenn tatsächlich jede einzelne Nummer durchsucht werden müsste, also zuerst mi 4 Neunen, dann mit 3, 2, etc.

    Daher meine Frage: Ist das irgendwie über das SQL-Statement direkt zu lösen? Wenn nein, gibt es eine einfache Möglichkeit, die Datensätze entsprechend zu ordnen ohne eben alle noch einmal zu verarbeiten?



    Danke im Voraus.
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    MS Access?

    Ist wahrscheinlich nicht ganz das was du suchst.
    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    
    SELECT DISTINCT
        cid, 
        cmobile,
        weight = 0
    FROM contact
    WHERE cmobile LIKE '%9999%'
    UNION SELECT DISTINCT
        cid, 
        cmobile,
        weight = 1
    FROM contact
    WHERE cmobile LIKE '%99%99%'
    UNION SELECT DISTINCT
        cid, 
        cmobile,
        weight = 2
    FROM contact
    WHERE cmobile LIKE '%9%9%9%9%'
    ORDER BY weight DESC, cmobile
    DrMueller bedankt sich. 
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Nein SQL Datenbank, wird von VB6 aus gestartet, daher habe ich auch die Möglichkeit es über Code zu lösen, würde jedoch das Ganze ausbemsen.
    Werde Deine Idee mal probieren, so wie ich das verstanden habe, muss auch nicht jede Ausnahme überprüft werden.

    Danke schon mal im Voraus.
     

  4. #4
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Hm Yaslaw, folgendes Problem:
    Deine Lösung funktioniert zwar wunderbar, aber ich muss es wegen verschiedenen SQL-Abfragen irgendwie über den Code machen.
    Ich habe Deine Idee aufgegriffen und im Listview ein Feld Height eingefügt und sortiere danach.
    Das Problem ist nur, dass ich anscheinend bei instr nicht mit WildCards suchen kann.

    Gibts da irgend eine Lösung, wie man bei Instr oder ähnlichem mit Wildcards arbeiten kann?
     

  5. #5
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Ich würde es über RegExp mit Regulären Ausdrücken versuchen
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  6. #6
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    passt, danke