Forum
Tipps
News
Menu-Icon

Mysql Suche

Wir haben in der Schule eine db in Mysql mit Musik gemacht.
Wir haben die Felder Vorname (dbtyp varchar);Nachname oder Band (varchar);Album (varchar);Titel (varchar); tracknr. (tinyint) und laenge (tinyint). Wir haben auch schon alle unsere Sachen reingemacht und haben jetzt über 1500 Lieder in unserer db.
Nun sollen für die Suchfunktion diese Fargen beantworten (herrausbeckommen wie ich so eine Frage in die Suchfunktion eingebe)

Bsp: die Frage war  Welche band beginnt mit einem M da ist die Lösung   M%

Nun die restlichen:
Wer hat die meißten Titel
Wer hat wie viele Titel
Wie lauten die doppelten Einträge
Wie lange dauern insgesammt alle Titel von ???
Wie lange sind alle Titel zusammen
Längster Band name
Welche Einträge haben keinen Vornamen ?

Wäre schon wenn ihr mir helfen könntet!!!
 
------------
Nope: Mal ins Webmasterforum verschoben. Hier kennen sich viele damit aus.
Leider hast du keine gültige Mailadresse hinterlassen,
konnte dich nicht informieren.

« Letzte Änderung: 12.02.07, 07:05:49 von Dr.Nope »

Antworten zu Mysql Suche:

>> Wer hat die meisten Titel

SELECT band
FROM tabelle
GROUP BY band
ORDER BY count(*) DESC
FETCH FIRST 1 ROWS ONLY

>> Wer hat wie viele Titel

SELECT band , COUNT(*) as anzahl
FROM tabelle
GROUP BY band

>> Wie lauten die doppelten Einträge

SELECT vorname, nachname, album ...
FROM tabelle
GROUP BY vorname, nachname, album ...
HAVING COUNT(*) > 1

>>Wie lange dauern insgesammt alle Titel von Huh

SELECT SUM(laenge)
FROM tabelle
WHERE band = 'Huh'

>> Wie lange sind alle Titel zusammen

SELECT SUM(laenge)
FROM tabelle

>> Längster Band name

SELECT band
FROM tabelle
ORDER BY length(band) DESC
FETCH FIRST 1 ROWS ONLY


>> Welche Einträge haben keinen Vornamen ?

SELECT *
FROM tabelle
WHERE vorname IS NULL
 

Danke dannke danke  ;D;D;D;D  :D:D:D:D

Und dass kann ich bei der Suche eingeben? ???

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
...(herrausbeckommen wie ich so eine Frage in die Suchfunktion eingebe)...

Oben angegeben sind die kompletten SQL-Befehle um das richtige Ergebnis aus der Datenbank zu bekommen.
Die kannst du in einen SQL-Editor einfügen und dann ausführen.
Diese jetzt allerdings in deine "Suchfunktion" einzugeben wird wahrscheinlich nicht funktionieren den du schriebst ja:

Zitat
Bsp: die Frage war  Welche band beginnt mit einem M da ist die Lösung   M%

Ich vermute also mal, das du als "Lösung" in die Suchfunktion nur "M%" eingegeben hast ?
Dann setzt diese das "intern" in den Befehl:
SELECT Nachname_oder_Band FROM tabellenname WHERE Nachname_oder_Band LIKE 'M%';

Also sieht es erstmal so aus, als müsstest du jeweils nur die "WHERE"-Klausel in die Suchfunktion einfügen.
Was genau nutzt ihr da? (Also welches Programm/Suchfunktion?)

Also wir benutzen XAMPP für Windows Version 1.5.5
                  Die phpMyAdmin Version ist 2.9.1.1

Wenn ich dieses M% suche und das sagt mir Xampp dass der Befehl der ist:

SELECT `nachn_band`
FROM `lieder`
WHERE `nachn_band` LIKE CONVERT( _utf8 'M%'
USING latin1 )
COLLATE latin1_general_ci
LIMIT 60 , 30

 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Ja, also da bin ich am Anfang auch stutzig geworden. Geht's jetzt primär um die Suchmaske, oder die Abfrage in MySQL?

Denn es dürfte sich etwas schwierig gestalten, eine Logik zu programmieren, die auf eine Frage wie "Welche Band beginnt mit einem M" richtig reagiert.

Dass ihr XAMPP einsetzt ist ja ok, aber wie wird die Datenbank angesprochen? Nur über phpMyAdmin, oder gibt's auch eine vernünftige Benutzeroberfläche?

greez 8)
JoSsiF 

« Letzte Änderung: 14.02.07, 13:13:36 von JoSsiF »

Wir arbeiten mit der db nur über phpMyAdmin!!

ok es ist alles super

ich müsste jetzt nur noch wissen was diese Befehle bedeuten, damit ich es im Unterricht erklären kann!!
Was das SELECT `nachn_band`; FROM `lieder`
heißt weiß ich schon brauche nur noch die unteren 5

WHERE `nachn_band` LIKE CONVERT( _utf8 'M%'
USING latin1 )
COLLATE latin1_general_ci
LIMIT 60 , 30
 ;D:o

Danke schonmal, nochmals für das andere Zeug!"!"!   

« Letzte Änderung: 14.02.07, 14:51:27 von diggi »

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Das geht mir jetzt doch schon fast zu weit in Richtung "Hausaufgaben"  ;)

Nur so viel: Vieles dort angegebene bezieht sich auf die  verwendete Codierung bzw. den Zeichensatz. Das Wesentliche, was da an SQL-Statement steht ist:

WHERE nachn_band LIKE 'M%';

Du solltest dir also für den Anfang die Frage stellen:
1. Was macht das "WHERE"
2. Was macht das "LIKE"
3. Wofür steht das 'M%'

Findest du alles problemlos in jeder SQL-Grundlagen-Sammlung.

klick

mfg
tremor4fun   

« Letzte Änderung: 14.02.07, 18:24:11 von tremor4fun »

« GästebuchBeim Einloggen: Session doesn´t exist / php »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Eingabefelder
Als Eingabefelder werden in einem Programm oder in Online-Formularen die Stellen bezeichnet, an denen Informationen eingetippt werden können. Die Beschriftung neben ...

nbsp
nbsp - oder besser als HTML-Code   - steht für "non-breaking space": zu deutsch: ein geschütztes Leerzeichen. Im Gegensatz zu einem normalen Leerzeichen so...

Schmutztitel
Als Schmutztitel - auch Schutztitel, Vortitel oder Vorsatztitel genannt - bezeichnet man die erste  gedruckte Seite eines Buches, auf der nur Autorenname und Titel s...