Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Die meisten gleichen Datensätze aus einer SQL Datenbank anzeigen

Frage Entwicklung Datenbanken

Mitglied: 65999

65999 (Level 1)

14.05.2010, aktualisiert 24.11.2016, 7475 Aufrufe, 9 Kommentare

Vielleicht könnt ihr mir helfen, bestimmt für euch eine Kleinigkeit.

Ich habe eine Datenbank mit 25 Feldern.

In diese Datenbank sollen Zahlen geschrieben werden. Nachdem die Datenbank anfängt sich zu füllen, möchte ich mit php eine Auswertung machen über die Einträge, die am meisten in der jeweiligen Spalte stehen. Beispiel:
1
3
3
2
1
1


Ergebnis: Die 1

Also soll auf der Seite die 1 erscheinen!

Wie kann ich das umsetzen? Es soll auch gezählt werden, wie oft die 1 in der Datenbank steht?

Ich habe schon alles mögliche probiert, mit count, mit count Array usw. Dann hab ich was hinbekommen, dann liegt es an dem mysql fetch objekt / array usw.

Es wäre sehr nett, wenn mir jemand man kurz die Lösung posten könnte:

01.
<?php 
02.
 
03.
include("db.php"); 
04.
$abfrage = mysql_query("SELECT Count(1) FROM tabelle '");  
05.
?>
Mitglied: maretz
14.05.2010 um 07:55 Uhr
select count(spaltenname) from tabellenname order by count(spaltenname) limit 1

müsste in etwa gehen
Bitte warten ..
Mitglied: 65999
14.05.2010, aktualisiert 09.11.2016
danke dir
Bitte warten ..
Mitglied: it-frosch
14.05.2010, aktualisiert 24.11.2016
Hallo,

martez hat dir den logischen Aufbau des Befehls geschrieben.

Die genaue SQL Query musst du dir mal nachschlagen da jeder Dialekt (MSSQL,MySQL, FirebirdSQL .....) etwas anderes geschrieben wird.

Für FirebirdSQL wird es so lauten:
Select count(spalte1),spalte1 from tabelle group by spalte1 order by 1 desc

Damit bekommst du eine zweispaltige Ausgabe wobei die erste Spalte die Häufigkeit (count(spalte1)) und die zweite den Wert aus der Spalte1 enthält.
Order by desc gibt nur die Sortierung nach der größten Häufigkeit an.

Deine Aufgabe ist nun das in richtige mySQL - SQL Statments umzubauen.
Mach erst einmal eine php Abfrage über ein einfaches SELECT und wenn das sauber funktioniert dann suche dir den Rest zusammen.

siehe hier: http://dev.mysql.com/doc/refman/5.1/de/example-maximum-column-group.htm ...
Bitte warten ..
Mitglied: 65999
14.05.2010, aktualisiert 24.11.2016
Meine abfrage lautet wie folgt:

01.
include("db.php"); 
02.
$result = mysql_query('Select count(1) from wiso order by count(1) limit 1'); 
03.
$ergebnis = mysql_query($result); 
04.
 
05.
while($row = mysql_fetch_object($ergebnis)) 
06.
07.
        echo $row->1; 
08.
    }
Als Ergebnis habe ich aber stets folgende Fehlermeldung:

01.
Parse error: syntax error, unexpected T_LNUMBER, expecting T_STRING or T_VARIABLE or '{' or '$' in ******\httpdocs\abfrage.php on line 25
Bitte warten ..
Mitglied: maretz
14.05.2010 um 13:14 Uhr
count(1) -> kann nicht klappen. Da gehört nen Tabellenname rein - und ich glaub (hoffe) nicht das du deine Tabellen einfach durchnummeriert hast...
Bitte warten ..
Mitglied: 65999
14.05.2010, aktualisiert 09.11.2016
Ok, dachte der Spaltenname gehört da rein weil ich ja auch nur die Einträge in der spalte zählen wollte.
Bitte warten ..
Mitglied: it-frosch
14.05.2010 um 22:32 Uhr
>wie muss ich das nun machen?

um die Hilfestellung für dich etwas abzukürzen, verrate uns doch einmal wie die erste spalte deiner Tabelle heißt.

Sollte die Spalte wirklich den Namen "1" haben dann wäre das suboptimal.

Wenn ich dich richtig verstanden habe wolltest du ein Ergebnis in der Art:

Wert Spalte 1 | Häufigkeit
1 5
2 1
3 456
4 43

bekommen.

Dann fehlt im deinen Befehl noch die zweite Spalte.
Es müsste wohl doch so etwas wie:

SELECT spalte1,count(spalte1) AS anzahl FROM wiso
GROUP BY spalte1

sein.
Bitte warten ..
Mitglied: Biber
15.05.2010 um 13:59 Uhr
Moin it-frosch,

Zitat von it-frosch:
um die Hilfestellung für dich etwas abzukürzen, verrate uns doch einmal wie die erste spalte deiner Tabelle heißt.
Ja nee, auch wenn es eigentlich physikalisch unmöglich ist...
er sagt ja:
Ich habe eine Datenbank mit 25 Feldern (nummeriert von 1 bis 25).

Muss eine ganz, ganz neue DB sein ..*gg

Grüße
Biber
Bitte warten ..
Mitglied: it-frosch
15.05.2010 um 14:19 Uhr
Hallo Biber,

ok, habe es jetzt auch verstanden.

Dann sollte er sich jetzt wohl am einfachsten seine DB mit einem select auslesen und sich daraus dann
ein insert Script für die neue DB bauen.
Bitte warten ..
Ähnliche Inhalte
PHP
PHP soll Datensätze in der Datenbank überprüfen
Frage von YanmaiPHP2 Kommentare

Hallo ihr Administratoren ;) Ich habe eine Datenbanktabelle "Freundschaftsanfragen". Wenn Benutzer a Benutzer b eine Freundschaftsanfrage schickt, dann wird ...

Datenbanken
Access Datenbank wie am einfachsten Datensätze aufbereiten
Frage von Dr.CornwallisDatenbanken5 Kommentare

Liebe Gemeinde, ich brauche eure Hilfe, wie würdet ihr in Access 2010 eine Datenbank aufbauen bzw. die ug. Anforderungen ...

Backup
SQL Online Datenbank sichern
Frage von DPiegzaBackup9 Kommentare

Hallo zusammen, Da mein letzter Beitrag als gelöst markiert ist und leider nur die ftp-Sicherung klappt, hier ein neues ...

Windows Server
Backup von SQL-Datenbanken auf einem Netzwerkshare!
gelöst Frage von gmeurbWindows Server10 Kommentare

Hallo, ich nutze hier einen SQL Server 2008 R2 und möchte Backups auf einen Netzwerkshare durchführen. Die Backups laufen ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 19 StundenBatch & Shell8 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 21 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows Server
Sichere Remote Desktop Verbindung wie?
gelöst Frage von nuss33Windows Server11 Kommentare

Hallo zusammen, eins vorweg: Ich besitze einen privaten Windows Server 2008 R2 zu Hause im Netzwerk er wird nicht ...