Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z zapytaniem do bazy
Forum PHP.pl > Forum > Bazy danych > MySQL
start123
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ć questionmark.gif?
Rafal Filipek
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.
start123
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ć
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.