![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 19.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Proszę pomóżcie mi rozwiązać problem, mam dwie tabele:
CREATE TABLE biling ( lp INT NOT NULL AUTO_INCREMENT PRIMARY KEY, data DATETIME NOT NULL, numer varchar (15), wybrany varchar (15), timer varchar (6), czas time not null, kierunek varchar (25), cena decimal(10,2), miesiac varchar(15), rok varchar(4) ) oraz CREATE TABLE tel_stacjonarne ( lp INT NOT NULL AUTO_INCREMENT PRIMARY KEY, centrala varchar(5), klinika varchar(255), pomieszczenie varchar(255), budynek varchar(20), kondygnacja varchar (20), nr_pokoju varchar (10), nr_tel_pom varchar (10), nr_tel_abo varchar (10), tytul varchar (60), nazwisko varchar (60), stanowisko varchar(6), upr varchar (3), konto varchar (20) ) i moj kod <? // MySQL - Laczenie i wybieranie bazy include('../mysql.php'); $connect = mysql_connect($host, $user, $pass); $select = mysql_select_db($database); // formularz print "<table>"; print "<tr>Koszty rozmow telefonicznych:"; if(isset($_POST['submit'])) { //pobierz dane $query="SELECT * FROM tel_stacjonarne WHERE klinika LIKE '%{$_POST['klinika']}%'"; $result=mysql_query($query) or die ("Zapytanie zakończone niepowodzeniem"); $query2 = ? $query1 = "SELECT SUM(cena) AS cena FROM biling JOIN tel_stacjonarne WHERE numer=nr_tel_abo AND klinika LIKE '%{$_POST['klinika']}%' AND miesiac LIKE '%{$_POST['miesiac']}%'"; $wartosc=mysql_result(mysql_query($query2),0) or die ("Zliczanie wartosc jest nie mozliwe"); $suma=mysql_result(mysql_query($query1),0) or die ("Zliczanie suma nie mozliwe"); echo "<tr><td><b>Klinika</b></td><td><b>Cos</b></td><td><b>Budynek</b></td><td><b>Poziom</b></td><td><b>Numer tel</b></td><td><b>Wartosc</b></b></td></tr>"; while ($wiersz = mysql_fetch_row($result)) { echo "<tr><td>$wiersz[2]</td><td>$wiersz[3]</td><td>$wiersz[4]</td><td>$wiersz[5]</td><td>$wiersz[8]</td><td>$wartosc</td></tr>"; } echo "<tr><td><b>--- Wartosc rozmow to $suma zl ---</b></td</tr>"; print "</table>\n"; } //koniec pobierania danych else { print "<table><tr><form action='limity.php' method='post'>"; print "<td>Szukanie wg numeru:</td><td>szukanie wg Kliniki:</td><td> Miesiac:</tr>"; print "<tr><td><input type='text' name='numer' size='20'></td>"; print "<td><input type='text' name='klinika' size='60'></td>"; print "<td><input type='text' name='miesiac' size='30'></td>"; print "</tr>"; print "<tr><td><input type='submit' name='submit' value='Szukaj wg kryteriow'></td></tr>"; print "</from></tr></table>"; } /* Zwalnianie pamięci */ //mysql_free_result($result); //mysql_free_result($sql); ?> Czego wynikiem jest ::: Klinika Cos Budynek Poziom Numer tel Wartosc Firma 1 parkowa Parter 6666661 55.17 Firma 1 parkowa Parter 6666662 55.17 Firma 1 parkowa Parter 6666663 55.17 i to prawie jest ok tylko chce aby Wartość była zliczana dla każdego numeru czyli Klinika Cos Budynek Poziom Numer tel Wartosc Firma 1 parkowa Parter 6666661 10 Firma 1 parkowa Parter 6666662 20 Firma 1 parkowa Parter 6666663 25.17 Może ktoś mi podpowie jak to zrobić ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 274 Pomógł: 54 Dołączył: 2.05.2006 Skąd: Nadarzyn Ostrzeżenie: (0%) ![]() ![]() |
1) naucz sie uzywac bbcode
2) nie powielaj tematow 3) Kod $query1 = "SELECT SUM(cena) AS cena FROM biling JOIN tel_stacjonarne WHERE numer=nr_tel_abo AND klinika LIKE '%{$_POST['klinika']}%' AND miesiac LIKE '%{$_POST['miesiac']}%'"; uzywajac JOIN'a musisz ustalic jak JOIN'owac tabele brakuej ci fragmentu [ode]ON tabela1.kolumna1 = tabela2.kolumna2[/code] poczytaj jak sie konstruuje JOIN'y. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 19.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
ad.1 może kiedyś
ad.2 moja wina , sorry ad.3 Join w tym przypadku wcale nie jest potrzebne Kod <span class="postcolor">$query1 = "SELECT SUM(cena) AS cena FROM biling,tel_stacjonarne WHERE numer=nr_tel_abo AND klinika LIKE '%{$_POST['klinika']}%' AND miesiac LIKE '%{$_POST['miesiac']}%'";</span> mnie bardziej interesuje Kod $query2 = jak zapisać |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 20:00 |