Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] [MySQL] While, gdy parametrem sa dwa zapytania SELECT
saren_as
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 21.07.2008

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


Witam!
Kombinuje, czytam i mimo to jestem za glopi na wyswietlenie tego co chce. Mam baze danych i trzy interesujace mnie tabele i takie dwa zapytania:

SELECT vserver_ip FROM vservers_status
JOIN vroots
ON vservers_status.vserver_ip = vroots.vid
WHERE vroots.existing = '1';


SELECT MAX(fs_usage)
FROM filers;


Jak z tego wyswietlic wszytkie vserver_ip, ktore spelniaja warunek z pierwszego oraz drugiego zapytania?

Chce to zrobic przez while (ewentualnie prosze tez o ukazanie mi jak by wygladalo jedno zlaczone zapytanie sql - wiem ze UNION ale nie wychodzi mi to jakos)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
webasek
post
Post #2





Grupa: Zarejestrowani
Postów: 274
Pomógł: 35
Dołączył: 18.07.2008
Skąd: Kielce

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


Może być union a może być łatwiej co to za tabela filers i jak ona się ma do tabeli vservers_status lub tabeli vroots?


--------------------
"Tylko dwie rzeczy są nieskończone: wszechświat oraz ludzka głupota,
choć nie jestem pewien co do tej pierwszej." Albert Einstein

Wirtualny Rynek Predykcyjny
Go to the top of the page
+Quote Post
saren_as
post
Post #3





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 21.07.2008

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


CREATE TABLE `filers` (
`filer_id` int(10) unsigned NOT NULL auto_increment,
`mount_point` varchar(255) NOT NULL default '',
`hostname` varchar(50) NOT NULL default '',
`production` tinyint(1) NOT NULL default '0',
`running` tinyint(1) NOT NULL default '0',
`fs_size` int(10) unsigned NOT NULL default '0',
`fs_usage` int(10) unsigned NOT NULL default '0',
`mem_size` int(10) unsigned default NULL,
`mem_usage` int(10) unsigned default NULL,
PRIMARY KEY (`filer_id`)
) TYPE=MyISAM;


CREATE TABLE `vroots` (
`vid` varchar(15) NOT NULL default '',
`filer` varchar(100) NOT NULL default '',
`xid` int(10) unsigned default NULL,
`existing` tinyint(1) NOT NULL default '0',
`count_idx` int(10) unsigned NOT NULL default '0',
`dist` varchar(100) default NULL,
`dist_ver` int(11) default NULL,
PRIMARY KEY (`vid`,`filer`),
UNIQUE KEY `index02` (`xid`,`filer`),
KEY `index01` (`vid`,`filer`,`existing`)
) TYPE=MyISAM;


CREATE TABLE `vservers_status` (
`vserver_ip` varchar(15) NOT NULL default '',
`filer_id` int(10) unsigned NOT NULL default '0',
`node_id` int(10) unsigned default NULL,
`started` tinyint(1) NOT NULL default '0',
`cpu_parts` int(10) unsigned NOT NULL default '0',
`cpu_usage` int(10) unsigned NOT NULL default '0',
`mem_size` int(10) unsigned default NULL,
`mem_usage` int(10) unsigned NOT NULL default '0',
`disk_size` int(10) unsigned default NULL,
`disk_usage` int(10) unsigned NOT NULL default '0',
`net_usage` bigint(20) unsigned NOT NULL default '0',
`_net_last` bigint(20) unsigned NOT NULL default '0',
`mem_usage_as` int(10) unsigned NOT NULL default '0',
`mem_size_as` int(10) unsigned NOT NULL default '0',
`net_usage_down` bigint(20) unsigned NOT NULL default '0',
`_net_last_down` bigint(20) unsigned NOT NULL default '0',
`net_usage_up` bigint(20) unsigned NOT NULL default '0',
`_net_last_up` bigint(20) unsigned NOT NULL default '0',
`date_created` datetime default NULL,
`last_modified` timestamp(14) NOT NULL,
PRIMARY KEY (`vserver_ip`),
UNIQUE KEY `index01` (`vserver_ip`)
) TYPE=InnoDB;

Tak to wyglada.
Go to the top of the page
+Quote Post
webasek
post
Post #4





Grupa: Zarejestrowani
Postów: 274
Pomógł: 35
Dołączył: 18.07.2008
Skąd: Kielce

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


Zapytanie sql może wyglądać tak:


  1. SELECT vserver_ip FROM vservers_status JOIN vroots ON vservers_status.vserver_ip = vroots.vid
  2. WHERE vroots.existing = '1' AND filer_id IN (SELECT MAX(fs_usage)
  3. FROM filers)


o in możesz poczytać tutaj


--------------------
"Tylko dwie rzeczy są nieskończone: wszechświat oraz ludzka głupota,
choć nie jestem pewien co do tej pierwszej." Albert Einstein

Wirtualny Rynek Predykcyjny
Go to the top of the page
+Quote Post
saren_as
post
Post #5





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 21.07.2008

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


Nie wyskakuje mi zaden rekord, a napewno sa takie, ktore spelniaja wszystkie warunki. Mozesz jeszcze raz na to spojrzec:)
Dzieki za zainteresowanie!
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 Aktualny czas: 20.08.2025 - 09:13