Announcement

Collapse
No announcement yet.

Frage zu: Gleiche Werte in einer Spalte im SQL-Result vermeiden.

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

  • Frage zu: Gleiche Werte in einer Spalte im SQL-Result vermeiden.

    Hallo,<br>
    <br>
    ich möchte eine ComboBox mit Werten aus einer Spalte einer Tabelle füllen. In der abgefragten Tabellenspalte sind jedoch mehrfach gleiche Werte vorhanden. In der ComboBox sollen jedoch gleiche Werte vermieden werden. Um doppelte Werte zu vermeiden habe ich folgenden SQL-Befehl abgesetzt:<br>
    <br>
    SELECT WERT,COUNT(*) FROM TABELLE GROUP BY WERT<br>
    <br>
    Ich weiß nicht ob diese Lösung nicht ganz astrein ist. Weiß jemand ob man das Problem noch besser lösen kann und wenn ja, wie?<br>
    <br>
    Ich bi für jeden Tipp dankbar.<br>
    <br>
    Viele Grüße,<br>
    Marco

  • #2
    Hallo Marco,<BR><BR>ja, aber das geht auch einfacher!<BR><BR>SELECT DISTINCT WERT FROM TABELLE<BR><BR>Dann bekommst du jeden Wert nur einmal. Deine Lösung oben würde auch funktionieren, wenn du die Anzahl der Werte mit anzeigen möchtest!:<BR><BR>SELECT WERT + ' ' + Cast(COUNT(*) as varchar) FROM TABELLE GROUP BY WERT<BR><BR>Grüße Ola

    Comment


    • #3
      Vielen Dank Olaf !!!

      Habe eine weitere Frage. In einem Select habe ich mehrere Werte, die ich in einer anderen Tabelle vergleichen möchte und bei übereinstimmung die Werte aus der anderen Tabelle anzeigen. Sorry, wenn ich das so kompliziert umschreibe. Aber ich krigs einfach nicht hin! Hier ist meine Abfrage, wie sie leider nicht funktioniert;<br>
      <br>
      SELECT<br>
      Tablle1.GESTTYP,<br>
      Tabelle1.GESTNR,<br>
      Tabelle1.GESTART,<br>
      Tabelle2.KCBES,<br>
      Tabelle1.GESTUART<br>
      Tabelle2.KCBES<br>
      FROM<br>
      Tabelle1,<br>
      Tabelle2,<br>
      WHERE<br>
      Tabelle1.GESTART=Tabelle2.KCKEYC AND<br>
      Tabelle1.GESTUART=Tabelle2.KCKEYC<br>
      <br>
      Das Problem liegt darin, dass ich jeweils den Wert in KCKEYC aus der gleichen Tabelle für zwei verschiedene Werte aus der anderen Tabelle anzeigen lassen möchte.<br>
      <br>
      Wäre klasse, wenn mir jemand helfen würde.<br>
      <br>
      Gruß,<br>
      Marc

      Comment


      • #4
        Das ist ja witzig. Ich weiß nicht ob es geht, da ein INNER JOIN eigentlich so aufgebaut ist das die Werte in einem Attribut stehen sollten die miteinander verbunden werden. Oder halt in mehreren Attributen. Aber bei Dir scheint es so zu sein, als ob der Wert in der einen ODER der anderen steht. Was passiert denn wenn Du ein OR statt AND verwendest?

        ? Fran

        Comment


        • #5
          Hallo Leute,

          macht doch folgendes:

          SELECT
          Tablle1.GESTTYP,
          Tabelle1.GESTNR,
          Tabelle1.GESTART,
          Tabelle2.KCBES,
          Tabelle1.GESTUART
          Tabelle2.KCBES
          FROM
          Tabelle1,
          Tabelle2,
          WHERE
          Tabelle1.GESTART=Tabelle2.KCKEYC
          UNION
          SELECT
          Tablle1.GESTTYP,
          Tabelle1.GESTNR,
          Tabelle1.GESTART,
          Tabelle2.KCBES,
          Tabelle1.GESTUART
          Tabelle2.KCBES
          FROM
          Tabelle1,
          Tabelle2,
          WHERE
          Tabelle1.GESTUART=Tabelle2.KCKEYC

          Der erste Teil holt die Ergebnis, die mit der Spalte GSTART passen und der zweite Teil den Rest.

          Gruss

          Stefa

          Comment

          Working...
          X