SELECT DISTINCT
Goedemiddag,
Ik selecteer met behulp van SELECT DISTINCT <veldnaam> mijn records uit een tabel om een overzicht te krijgen waarbij <veldnaam> maar één keer voorkomt. Als ik dit doe dan is informatie uit andere velden van het zelfde record niet beschikbaar. En ook juist die info wil ik graag hebben.
Wie kan mij verder helpen?
George
Ik selecteer met behulp van SELECT DISTINCT <veldnaam> mijn records uit een tabel om een overzicht te krijgen waarbij <veldnaam> maar één keer voorkomt. Als ik dit doe dan is informatie uit andere velden van het zelfde record niet beschikbaar. En ook juist die info wil ik graag hebben.
Wie kan mij verder helpen?
Code (php)
1
2
3
2
3
// Query opbouwen voor weergave foto's'
$sql = "SELECT DISTINCT hoofdstuk FROM fotoboek WHERE album = '$cSelectie' ORDER BY opnamedatum ";
$cResultFoto = mysql_query($sql);
$sql = "SELECT DISTINCT hoofdstuk FROM fotoboek WHERE album = '$cSelectie' ORDER BY opnamedatum ";
$cResultFoto = mysql_query($sql);
George
Gewijzigd op 04/07/2012 14:57:11 door George van Baasbank
Maar welke records wil je dan hebben? Met distinct haal je alleen de verschillende albums op, maar de rest van de velden zijn dus blijkbaar niet identiek. Dus als er twee records voor hetzelfde album zijn, welke overige info wil je dan. Die van het eerste record voor dat album, of die van het tweede?
Ik wil van ieder hoofdstuk één record selecteren die dan gebruikt gaat worden in een selectiescherm om alle foto's uit dit hoofdstuk te laten zien.
Het record bevat nl. ook informatie over opnamedata en beschrijvingen
Het record bevat nl. ook informatie over opnamedata en beschrijvingen
Gewijzigd op 04/07/2012 15:02:41 door George van Baasbank
Welke info is dan nog meer nodig (echt nodig voor dit stuk) en kan dat dan verschillende zijn mocht je alle records ophalen?
Elk record bevat naast specifieke info over de foto ook de naam van het album en het hoofdstuk uit het album.
In eerste instantie selecteert de bezoeker een album van de site en in tweede instantie het hoofdstuk.
Voorbeeld: Op de startpagina selecteert men foto's uit de provincie, bijv. Noord-Brabant en in een tweede instantie uit het album van Noord-Brabant uit de beschikbare hoofdstukken zoals Efteling, Dierenpark Overloon of Oorlogsmuseum Overloon.
George
Kijk op: http://voorbeeld4.vanbaasbank.nl
Als je daar Noord-Brabant kiest dan zie je tot twee keer het hoofdstuk "Kasteel Arcen" en dat moet dus maar één keer voorkomen. Uit dit record wil ik ook voor visuele weergave de bestandsnaam van de foto halen.
In eerste instantie selecteert de bezoeker een album van de site en in tweede instantie het hoofdstuk.
Voorbeeld: Op de startpagina selecteert men foto's uit de provincie, bijv. Noord-Brabant en in een tweede instantie uit het album van Noord-Brabant uit de beschikbare hoofdstukken zoals Efteling, Dierenpark Overloon of Oorlogsmuseum Overloon.
George
Kijk op: http://voorbeeld4.vanbaasbank.nl
Als je daar Noord-Brabant kiest dan zie je tot twee keer het hoofdstuk "Kasteel Arcen" en dat moet dus maar één keer voorkomen. Uit dit record wil ik ook voor visuele weergave de bestandsnaam van de foto halen.
Gewijzigd op 04/07/2012 15:23:14 door George van Baasbank
Niet echt een antwoord op mijn vraag (dus was waarschijnlijk niet duidelijk genoeg).
Welk velden wil je in de gevraagde query selecteren? Daarbij, je wil alleen de verschillende albums hebben, dus geen dubbele, maar welk van de te selecteren velden kunnen dan ook anders zijn?
Stel je wilt albumnaam en foto_id. Kan het dan zo zijn dat als albumnaam 'mijn_album' twee keer in je database staat, het foto_id dan twee verschillende waardes kan hebben?
Welk velden wil je in de gevraagde query selecteren? Daarbij, je wil alleen de verschillende albums hebben, dus geen dubbele, maar welk van de te selecteren velden kunnen dan ook anders zijn?
Stel je wilt albumnaam en foto_id. Kan het dan zo zijn dat als albumnaam 'mijn_album' twee keer in je database staat, het foto_id dan twee verschillende waardes kan hebben?
Erwin,
Ik wil de volgende velden gebruiken
1. album: voor de WHERE-clausule
2. hoofdstuk: voor de DISTINCT-clausule
3. afbeelding: voor de bestandsnaam van de foto die geselecteerd wordt door bovenstaande clausules
Nogmaals de query om te selecteren:
Nog even antwoord op je vraag: Er kunnen/zijn meerdere foto's uit het zelfde album en meerdere foto's met het zelfde hoofdstuk. Alle foto's hebben een unieke id.
Ik wil de volgende velden gebruiken
1. album: voor de WHERE-clausule
2. hoofdstuk: voor de DISTINCT-clausule
3. afbeelding: voor de bestandsnaam van de foto die geselecteerd wordt door bovenstaande clausules
Nogmaals de query om te selecteren:
Code (php)
1
2
3
2
3
// Query opbouwen voor weergave foto's'
$sql = "SELECT DISTINCT hoofdstuk FROM fotoboek WHERE album = '$cSelectie' ORDER BY opnamedatum ";
$cResultFoto = mysql_query($sql);
$sql = "SELECT DISTINCT hoofdstuk FROM fotoboek WHERE album = '$cSelectie' ORDER BY opnamedatum ";
$cResultFoto = mysql_query($sql);
Nog even antwoord op je vraag: Er kunnen/zijn meerdere foto's uit het zelfde album en meerdere foto's met het zelfde hoofdstuk. Alle foto's hebben een unieke id.
Gewijzigd op 04/07/2012 19:48:40 door George van Baasbank



