Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] Wyciąganie danych z pola data
kaflo
post 11.04.2007, 13:20:16
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 11.03.2007

Ostrzeżenie: (0%)
-----


Czy istnieje możliwość wyciągania z kolumny bazy danych która przechowuje daty (w formacie 2007-02-23) wyciągnięcia jednocześnie tylko miesiąca i dnia.
Potrzebuję wyszukiwac rekordów w bazie danych które spełniają zadany warunek np. pomiędzy 01-01 a 03-23
Rok tu nie ma żadnego znaczenia.
Go to the top of the page
+Quote Post
zleek
post 11.04.2007, 15:35:26
Post #2





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 25.10.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


  1. SELECT * FROM tabela WHERE month(data_z_bazy)>0 AND month(data_z_bazy)<4 AND day(data_z_bazy)>0 AND day(data_z_bazy)<16


to Ci pobierze rekordy których data jest pomiędzy 1 stycznia a 15 marca dowolnego roku.


--------------------
System Sprzedaży Internetowej Syspin: www.syspin.pl
Moja strona: www.tulikowski.com
Go to the top of the page
+Quote Post
kaflo
post 11.04.2007, 15:49:30
Post #3





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 11.03.2007

Ostrzeżenie: (0%)
-----


Dzieki. To może jeszcze jedno pytanie
Mam w bazie trzy kolumny:
ID | Data | Nr_kasy
1 |2006-04-10|1
2 |2006-04-10|2
3 |2007-04-10|1


Jak napisać zapytanie aby wyświetlił tylko rekord o numerze 2 . Tzn. ma wyświetlić informację o zdarzeniu które powinno być wykonane dziś z uwagi na dzień i m-ce. 1 i 3 ma nie wyświetlać bo zdarzenie miało już miejsce w tym roku. Chodzi konkretnie o przegląd ma być zrobiony do 10-04 następnego roku po ostatnim jesden już był (1 i 3) ale jednego jeszcze nie było
Go to the top of the page
+Quote Post
zleek
post 11.04.2007, 19:41:59
Post #4





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 25.10.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


  1. SELECT * FROM a WHERE data<(SELECT DATE_SUB(CURDATE(), INTERVAL 1 YEAR)) AND kasa NOT IN (SELECT DISTINCT(kasa) FROM a WHERE data>(SELECT DATE_SUB(CURDATE(), INTERVAL 1 YEAR)))


Proszę


--------------------
System Sprzedaży Internetowej Syspin: www.syspin.pl
Moja strona: www.tulikowski.com
Go to the top of the page
+Quote Post
kaflo
post 12.04.2007, 07:25:35
Post #5





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 11.03.2007

Ostrzeżenie: (0%)
-----


Twoje pierwsze rozwiazanie nie do konca dziala bo:
  1. SELECT * FROM tabela WHERE month(data_z_bazy)>0 AND month(data_z_bazy)<4 AND day(data_z_bazy)>0 AND day(data_z_bazy)<16

zapytanie owszem wyszuka okres ale: z 1 miesiąca od 1do 16 dnia, z 2 miesiaca od 1do 16 dnia no i z 3 miesiaca od 1 do 16 dnia
Rozumiesz? To nie do konca tak jak chcialem ale sobie jakos poradzilem funkcja right()
A co do drugiego roziwazania to jeszcze nie sprawdzalem ale chyba nie jest do konca to co chcialem zastanawiam sie czy nie wykorzystac do tego dodatkowej kolumny.
Ale i tak wielkie dzieki za pomoc.

Drugie rozwiazanie spełnia swoje zadanie. Wielkie dzieki
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 15.06.2025 - 23:41