Announcement

Collapse
No announcement yet.

SQL Abfrage

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Abfrage

    hallo

    ich arbeite neu mit dem "SQL Server Management Studio Express".
    dabei habe ich folgedes sql-problem:

    ich habe eine tabelle 'artikel' worin das feld 'name' enthalten ist.
    in diesem feld 'name' hat es jeweils 2 worte die durch ' - ' getrennt sind
    --> bsp: Hans - Muster (Privat)

    mit welcher sql-abfrage, kann ich aus diesem string 'Hans - Muster (Privat)' nur den Namen 'Muster' ausgeben?
    für mich ist 'Hans - ' und '( Privat)' nicht wichtig und wird somit nicht benötigt...

    da ich von sql keine ahnung habe, wäre ich um hilfe sehr dankbar.

    ich hoffe das mir jemand weiterhelfen kann.

    danke schon im voraus für die hilfe.

    gruss

  • #2
    Hi,

    mit Instr kannst du Abfragen wieviele Zeichen es sind bis zum -.

    InStr(1,"Hans - Muster","-") liefert eine 6.

    Mit dem Rückgabewert von Instr kannst du dann den String zerlegen und du bekommst dann das was du haben willst.

    Gruss

    Michael
    http://www.mschnuerer.de

    Comment


    • #3
      hallo MiSchn1980

      danke für dein schnelles feedback.

      habe soeben folgendes sql gebaut:

      SELECT
      case when a.cname like '%-%' then left(right(a.cname,len(a.cname)-charindex('-',a.cname)-1),charindex('(',right(a.cname,len(a.cname)-charindex('-',a.cname)-1))-2)
      else a.cname
      end as produkt_name

      a.cname
      from [eazybusiness].[dbo].[tartikel] A

      where A.fGewicht between 0.00 and 0.02 and
      a.cAktiv = 'y'
      and
      cArtNr = '130649'

      habe jetzt noch das problem, dass wenn ich die abfrage über alle artikel machen möchte (ohne die abfrage '230646') bekomme ich folgende fehlermeldung:

      Meldung 536, Ebene 16, Status 5, Zeile 1
      Es wurde ein ungültiger Längenparameter an die SUBSTRING-Funktion übergeben.

      mit artikelabfrage funktioniert alles einwandfrei...
      weisst du an was das liegt?

      danke schon im voraus für deine unterstützung.

      gruss

      Comment


      • #4
        Ich glaube viel, aber nicht, dass die Fehlermeldung mit dem gezeigten SQL-Statement zusammenstimmt. Es gibt in diesem Statement kein SUBSTRING - woher dann diese Fehlermeldung?

        bye,
        Helmut

        Comment


        • #5
          leider ist es aber so... ich kann die fehlermeldung auch nicht richtig deuten :-(
          hoffe auf baldige hilfe...

          gruss

          Comment


          • #6
            Hi,

            die Fehlermeldung kommt mir auch spanisch vor.

            Kann es vielleicht sein, dass du dich verzählst mit deinen -1 und -2?

            Gruss

            Michael
            http://www.mschnuerer.de

            Comment

            Working...
            X