TP Underground Lounge 07/08
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 18.04.2008, 14:51   #1
TP-Senior
 
Benutzerbild von tom81
 
Registriert seit: Mar 2006
Ort: Erftstadt
tom81 ist auf einem guten Weg

SQL Mehrfache Werte einer Spalte ausgeben


Hallo Zusammen,

ich stehe hier grad ein wenig auf der Leitung. Ich versuche aus einer Tabelle alle Zeilen (komplett) auszugeben, bei denen der Inhalt einer Spalte mehrfach vorkommt. z.B.

id string
1 abc
2 def
3 abc
4 ghi

Die Ausgabe soll lauten:

id string
3 abc
1 abc

Mein Ansatz war bisher:

SELECT * FROM table WHERE (SELECT string FROM table WHERE ??? LIMIT 1) = string ORDER BY string DESC;

Die "???" beziehen sich auf meine Wissenslücke... oder ist der Ansatz ganz falsch?

Gruß
Tom
__________________
"Ich darf das!"
Der Mensch hat drei Wege, klug zu handeln. Erstens durch Nachdenken: Das ist der edelste. Zweitens durch Nachahmen: Das ist der leichteste. Drittens durch Erfahrung: Das ist der bitterste. (Konfuzius)
tom81 ist offline   Mit Zitat antworten


Alt 18.04.2008, 15:05   #2
TP-Senior
 
Benutzerbild von Bruecksen
 
Registriert seit: Mar 2002
Ort: Karlsruhe
Bruecksen bringt sich richtig ein
mal etwas ungetestetes, die Stichwörter sind hier "group by" und "having".
das hab ich per google gefunden, vielleicht hilft es dir weiter. http://www.tbee.de/mysql/p4_having_funktionen.php

PHP-Code:
SELECT FROM table GROUP BY stringid HAVING count(*) > 1 ORDER BY id DESC 
Die gleichen Strings müssten allerdings auch die gleiche id haben, wie soll sonst entschieden werden welche id ausgegeben wird.

grüße
matthias
__________________
Bruecksen ist offline   Mit Zitat antworten
Alt 18.04.2008, 15:19   #3
TP-Senior
 
Benutzerbild von tom81
 
Registriert seit: Mar 2006
Ort: Erftstadt
tom81 ist auf einem guten Weg
Wenn auch die id gleich sein muss, dann löst das leider mein Problem nicht.
Ich muss eine Abfrage machen, kann leider die Tabelle dafür nicht verändern.
__________________
"Ich darf das!"
Der Mensch hat drei Wege, klug zu handeln. Erstens durch Nachdenken: Das ist der edelste. Zweitens durch Nachahmen: Das ist der leichteste. Drittens durch Erfahrung: Das ist der bitterste. (Konfuzius)
tom81 ist offline   Mit Zitat antworten
Alt 18.04.2008, 18:04   #4
TP-Senior
 
Benutzerbild von Farbenblinder
 
Registriert seit: Dec 2005
Ort: Rostock
Farbenblinder ist auf einem guten Weg
vielleicht hilft dir dies hier weiter:

http://sql-server-performance.com/Co...536.aspx#60536

sonst geht auch:

SELECT (nummern + ', ' + buchstaben) AS meine

FROM tabelle

ORDER BY nummern ASC, buchstaben ASC
__________________
Ich sehe was, was du nicht siehst und das sieht gruselig aus
Farbenblinder ist offline   Mit Zitat antworten
Alt 18.04.2008, 18:31   #5
TP-Senior
 
Registriert seit: May 2007
Ort: Berlin
SchneewittchenX hilft, wo's gehtSchneewittchenX hilft, wo's gehtSchneewittchenX hilft, wo's geht
Hallo Tom,
so müsste es richtig sein (MySQL 5)


PHP-Code:
SELECT IDtextfeld
FROM stringtest
WHERE textfeld
IN 
(SELECT textfeld FROM `stringtestGROUP BY textfeld HAVING count(textfeld) >1)
ORDER BY id DESC 
Theorie:http://dev.mysql.com/doc/refman/5.0/...ubqueries.html

Geändert von SchneewittchenX (18.04.2008 um 18:41 Uhr). Grund: Link zugefügt
SchneewittchenX ist offline   Mit Zitat antworten
Alt 18.04.2008, 19:24   #6
TP-Senior
 
Benutzerbild von tom81
 
Registriert seit: Mar 2006
Ort: Erftstadt
tom81 ist auf einem guten Weg
That's it!

Zitat:
Hallo Tom,
so müsste es richtig sein (MySQL 5)


PHP-Code:
SELECT ID, textfeld
FROM stringtest
WHERE textfeld
IN (SELECT textfeld FROM `stringtest` GROUP BY textfeld HAVING count(textfeld) >1)
ORDER BY id DESC
Theorie:http://dev.mysql.com/doc/refman/5.0/...ubqueries.html
Vielen Dank, das war mal ne schwere Geburt (meinerseits)


Gruß Tom
__________________
"Ich darf das!"
Der Mensch hat drei Wege, klug zu handeln. Erstens durch Nachdenken: Das ist der edelste. Zweitens durch Nachahmen: Das ist der leichteste. Drittens durch Erfahrung: Das ist der bitterste. (Konfuzius)
tom81 ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
SQL Mehrfache Werte einer Spalte ausgeben SQL Mehrfache Werte einer Spalte ausgeben
« [PHP/mySQL] Zwei Werte mit Checkbox übergeben | htaccess oder php login? »

Stichworte
datenbank, mysql

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:55 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67