Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
wyciągnięcie danych - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: wyciągnięcie danych (/thread-wyciagniecie-danych)



wyciągnięcie danych - kendry - 07-06-2013

Witam,

Mam dwie table:

CREATE TABLE `axent_storehouse_documents` (
`id` int(11) DEFAULT NULL,
`k_idklienta` int(11) DEFAULT NULL,
`wartosc` decimal(10,0) DEFAULT NULL,
`wartosc2` decimal(10,0) DEFAULT NULL,
`rok` text,
`tr_datasprzedaz` date DEFAULT NULL,
`tr_datawystaw` date DEFAULT NULL,
`tr_nsr` text,
`tr_fv` text,
`tr_flaga` int(11) DEFAULT NULL,
`zl_status` int(11) DEFAULT NULL,
`k_kod` text,
`tr_rodzaj` int(11) DEFAULT NULL,
`lt_nrobcy` text


CREATE TABLE IF NOT EXISTS `www_klienci` (
`client_id` int(11) NOT NULL AUTO_INCREMENT,
`kod` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`haslo` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`nazwa` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`miasto` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`kod_pocztowy` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`adres` text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`telefon` text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`fax` text CHARACTER SET utf8 COLLATE utf8_unicode_ci,
`email` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`nip` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`zadluzenie` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`id_platnika` int(11) DEFAULT NULL,
`grupa_cenowa` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`rabat` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`galanteria` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`mailing` varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
`updated` int(11) DEFAULT NULL,
`platnosc` int(11) DEFAULT NULL,
`www` varchar(245) DEFAULT NULL,
PRIMARY KEY (`client_id`)
)

Mam dwa selecty:

SELECT * FROM axent_storehouse_documents where tr_datasprzedaz = CURDATE() and wartosc=wartosc2
i
SELECT DISTINCT email FROM `www_klienci`, `axent_storehouse_documents` WHERE www_klienci.nazwa=axent_storehouse_documents.k_kod

Potrzebuję wybrać email gdy spełnione są warunki z tych dwóch selectów


RE: wyciągnięcie danych - hieroshima - 10-06-2013

zrób relację między tymi tabelami (domyślam się, że chciałeś to zrobić bo masz w pierwszej tabeli 'k_idklienta') i wtedy normalnie robisz:

Kod PHP:
SELECT k.email FROM www_klienci k JOIN axent_storehouse_document a ON k.client_id a.k_idklienta WHERE a.tr_datasprzedaz CUREDATE() AND a.wartosc a.wartosc2 



RE: wyciągnięcie danych - kendry - 11-06-2013

Hej

Dzięki za odpowiedź poradziłem sobie zapytaniem:

Kod PHP:
SELECT emailidtr_fvtr_datasprzedazwartosc2 FROM www_klienciaxent_storehouse_documents WHERE www_klienci.nazwa=axent_storehouse_documents.k_kod and axent_storehouse_documents.tr_datasprzedaz CURDATE() and axent_storehouse_documents.wartosc=axent_storehouse_documents.wartosc2 

ale mam jeszcze jedno pytanie, może wiesz jak napisać warunek który sprawdzałby:
-jeżeli $wartosc jest pusta to pobiera sobie $wartosc2 z bazy


RE: wyciągnięcie danych - Engine - 11-06-2013

w SELECT dopisz że chcesz pobrać też wartosc
Kod:
$zapytanie = $DB->query("TWOJE ZAPYTANIE");
$rows = $zapytanie->fetch_array(MYSQLI_ASSOC);    
if(empty($rows['wartosc'])) {
    $rows['wartosc'] = $rows['wartosc2'];
}



RE: wyciągnięcie danych - hieroshima - 11-06-2013

bez sensu phpa do tego uzywać. Jest coś takiego w mysqlu jak ISNULL()

edit: IFNULL() * nie moge posta edytować bo coś strona się rozjechała


RE: wyciągnięcie danych - kendry - 14-06-2013

Super dzięki za odpowiedzi, poradziłem sobie z tym problemem. Ale mam jeszcze jedno pytanie w zapytaniu select mam warunek datasprzedaz = CUREDATE() a jak napisać żeby pobierane były wartości jeżeli datasprzedaz będzie np 7 dni po upływie tego terminu

Z lekka się rozjeżdża ta strona :/

to może jeszcze raz moje pytanie:

dzięki za odpowiedzi, poradziłem sobie z tym problemem. Ale mam jeszcze jedno pytanie w zapytaniu select mam warunek
datasprzedaz = CUREDATE() a jak napisać żeby pobierane były wartości jeżeli datasprzedaz
będzie np 7 dni po upływie tego terminu


RE: wyciągnięcie danych - hieroshima - 14-06-2013

DATE_SUB (CURDATE (), INTERVAL 7 DAY)


RE: wyciągnięcie danych - kendry - 17-06-2013

Super wielkie dzięki *hieroshima