Hulp in query gezocht

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Stefan srepmek

stefan srepmek

08/11/2008 17:34:00
Quote Anchor link
Hallo ik wil graag uit een "date" functie, die ik in mijn database heb opgeslagen een query uitvoeren.
Met andere woorden ik wil het jaar selecteren daarna de maand en dan de dag
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
SELECT DISTINCT YEAR(datum) AS jaar, MONTH(datum) as maand FROM sensor0 WHERE year = '2008'
?>

maar als ik dit doe krijg ik deze melding
SQL Error: Unknown column 'year' in 'where clause'
Mis ik wat??

Groet
Stefan
Gewijzigd op 01/01/1970 01:00:00 door Stefan srepmek
 
PHP hulp

PHP hulp

20/11/2024 14:39:06
 
Gerben G

Gerben G

08/11/2008 17:36:00
Quote Anchor link
Je moet in de WHERE jaar gebruiken, omdat je veldnaam zo heet
edit
en waarom het jaar opvragen, daar vergelijk je toch al mee in de WHERE, dus je weet wat het jaar is.
Gewijzigd op 01/01/1970 01:00:00 door Gerben G
 
Tikkes C

Tikkes C

08/11/2008 17:36:00
Quote Anchor link
moet dat niet zijn:

WHERE jaar=2008
 
Stefan srepmek

stefan srepmek

08/11/2008 17:42:00
Quote Anchor link
Helaas het blijft het zelfde ookal verander ik het in "jaar", ook 2008 zonder de ' verandert ook niets.
En waarom ik dat wil is omdat in deze query je dan 11 maanden over hou want ons jaar is nog niet voorbij
En de where is straks een variabele
Gewijzigd op 01/01/1970 01:00:00 door stefan srepmek
 
- SanThe -

- SanThe -

08/11/2008 17:45:00
Quote Anchor link
Tikkes schreef op 08.11.2008 17:36:
moet dat niet zijn:

WHERE jaar=2008

WHERE YEAR(datum)=2008
 
Tikkes C

Tikkes C

08/11/2008 17:45:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?PHP
SELECT DISTINCT YEAR(datum) AS jaar, MONTH(datum) as maand FROM sensor0 WHERE YEAR(datum) = 2008
?>



EDIT: santhe was eerst ;-)
Gewijzigd op 01/01/1970 01:00:00 door Tikkes C
 
Stefan srepmek

stefan srepmek

08/11/2008 17:46:00
Quote Anchor link
Dank u dat was het
 
Jesper Diovo

Jesper Diovo

08/11/2008 19:09:00
Quote Anchor link
Maar waarom zou je het jaar opvragen als je dat toch al weet? Je stelt dat tenslotte plaintexted vast in de WHERE-clause.
 
Stefan srepmek

stefan srepmek

08/11/2008 20:57:00
Quote Anchor link
Jezpur schreef op 08.11.2008 19:09:
Maar waarom zou je het jaar opvragen als je dat toch al weet? Je stelt dat tenslotte plaintexted vast in de WHERE-clause.


Omdat ik nu nog in deze query weet dat het 2008 is maar als ik straks alles bij elkaar heb, dan is het een variabel.
Dan wil ik uit de datum's kiezen uit mijn database en die lopen vanaf halverwege 2005 tot aan nu en dan heb ik dus niet alle maanden van 1 tot en met 12.
Ik zal even proberen uit te leggen wat ik wil:
Ik heb een database waar in ik temperaturen opsla, ieder 5min
Is op gebouwd in
id
tijd
datum
temp
timestamp

Voordat ik nu van iedereen commentaar over me heen krijg van
"jammer dat je het zo hebt op gebouwd"
Het is niet anders!!!

Wat ik nu wil is dat ik verschillende grafieken kan maken zoals dit

http://www3.buienradar.nl/weergrafiek.aspx?soort=nidekking&stationcode=NL&stationnaam=Nederland&naam=Buienindex&extensie=in%20procenten

Echter hier zou je bijv. 31 feb kunnen selecteren, goed hij geeft dan wel aan dat deze datum niet bestaat maar ik wil niet hebben dat je die datum kan selecteren.

Dus als ik in een dropdown menu "2008" selecteer dan moeten alleen de maanden 1 t/m 11 te voorschijn komen en als ik dan de 2e maand selecteer dan de dagen 1 t/m 29.

Dus 2008 kan net zo goed 2005 of 2006 of 2007 zijn.

Als er nog meer iedeeen zijn mogen die ook komen
 
Joren de Wit

Joren de Wit

08/11/2008 21:01:00
Quote Anchor link
De kolommen tijd, datum en timstamp kun je hier natuurlijk gewoon samenvoegen in 1 kolom van het type DATETIME. Je geeft aan dat het gewoon niet anders kan? Waarom niet?

Als jij alle tijdstippen in een DATETIME opslaat, kun je van daaruit precies alle te selecteren data bepalen. Dan zul je dus ook nooit 31 februari ertussen hebben omdat het fysiek onmogelijk is om die datum in de database te zetten...
 
Klaasjan Boven

Klaasjan Boven

08/11/2008 21:04:00
Quote Anchor link
Dan geld nog steeds dat het onnozel is om te doen

SELECT YEAR(datum) from TABEL WHERE YEAR(DATUM) = 2008

is net zoiets las:

SELECT 1 FROM TABEL (rara wat zou het antwoord zijn)

Ik zou gaan voor SELECT MONTH(DATUM), DAY(DATUM) FROM TABEL WHERE YEAR(DATUM) = 2008.
 
Joren de Wit

Joren de Wit

08/11/2008 21:16:00
Quote Anchor link
Klaasjan Boven schreef op 08.11.2008 21:04:
Dan geld nog steeds dat het onnozel is om te doen

(...)
Oh, dat ben ik uiteraard helemaal met je eens. Maar goed, first things first. En dat is lijkt mij een correct datamodel gebruiken ;-)
 
Klaasjan Boven

Klaasjan Boven

08/11/2008 21:48:00
Quote Anchor link
Blanche dit schreef ik toen de post van jou er nog niet stond. Ik heb het dus niet over jouw oplossing :)
 
Joren de Wit

Joren de Wit

08/11/2008 22:01:00
Quote Anchor link
Klaasjan Boven schreef op 08.11.2008 21:48:
Blanche dit schreef ik toen de post van jou er nog niet stond. Ik heb het dus niet over jouw oplossing :)
Aha, duidelijk ;-)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.