[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как правильно вызвать таблицу БД на MySQL в интерф
Pris
Здравствуйте! У меня возникла проблема главная таблица в моей базе данных на MySQL содержит много вторичных ключей, есть написанный на php интерфейс который вызывает эту таблицу, но при вызове она показывает цифры которые являются первичными ключами в дочерних таблицах как сделать так чтобы она показывала слова, из дочерних? заранее спасибо!



Спустя 35 минут, 20 секунд (24.04.2011 - 10:23) alex12060 написал(а):

table1.text, table2.text, tableN.text

Спустя 3 минуты, 10 секунд (24.04.2011 - 10:26) Pris написал(а):
А подробнее?

Спустя 3 минуты, 20 секунд (24.04.2011 - 10:30) alex12060 написал(а):
Какие у тебя таблицы есть?
Напиши их структуру сюда и что тебе надо получить.
И свой запрос сюда кинь.

Спустя 21 минута, 31 секунда (24.04.2011 - 10:51) Pris написал(а):
Таблица yspevaemost столбцы
ID
ID_student
ID_temperament
ID_reprezentativn_sistema
ID_method_obyashenia
ID_method_obyasnenia_2
ID_method_otrabotki
ID_method_otrabotki_2
ID_method_kontrolia
ID_method_kontrolia_2
Sredn_ball
эту таблицу нажно вывести но она связана с другими таблицами посредством внешних ключей
Таблица yspevaemost столбец ID_student связан с таблицей student столбец ID_studenta
Состав таблицы student:ID_studenta Name_studenta Nomer_group
И так со всеми столбцами когда через интерфейс я вызываю таблицу успеваемость то в ней отображаются числа вторичных ключей а не сами фамилии студентов которые нужны
Таблица yspevaemost столбец ID_temperament связан с таблицей temperament столбец ID_temperamenta
Состав таблицы temperament это столбцы ID_temperamenta name_ temperamenta

Код на php

<?php
mysql_connect("localhost", "root", "") or die("Could not connect to MySQL server!");
mysql_select_db("Statistika_obyshenia") or die("Could not select database!");
mysql_query("set names cp1251");
$query = "SELECT * FROM yspevaemost WHERE 1"; $result = mysql_query($query);
$x = 0;
print "<table>\n";
print "<tr>\n<th>||STUDENT||</th><th>||TEMPERAMENT||</th><th>||SREDN_BALL||</ th>\n</tr>\n";
while ($x < mysql_numrows($result)) :
$id = mysql_result($result, $x, 'ID_student');
$temp = mysql_result($result, $x, 'ID_temperament');
$ball = mysql_result($result, $x, 'Sredn_ball');
print "<tr>\n";
print "<td>$id</td>\n<td>$temp</td>\n<td>$ball</td>\n";
print "</tr>\n";
$x++;
endwhile;
print "</table>";
mysql_close();

Спустя 6 минут, 4 секунды (24.04.2011 - 10:57) alex12060 написал(а):
В общем, мне лень тут состоявлять.
ПРочитай про объединения таблиц: LEFT JION, INNER JOIN, RIGHT JOIN

Спустя 2 часа, 42 минуты, 55 секунд (24.04.2011 - 13:40) Pris написал(а):
Хотя бы скажи после чего в скрипт вставлять LEFT JION, INNER JOIN, RIGHT JOIN

Спустя 3 минуты, 38 секунд (24.04.2011 - 13:44) neadekvat написал(а):
Pris, их надо не просто "вставить". Без теории такую задачу не решить. Информации о JOIN-запросах в инете дофига.

Спустя 5 часов, 30 минут, 5 секунд (24.04.2011 - 19:14) grant написал(а):
Цитата (Pris @ 24.04.2011 - 10:40)
Хотя бы скажи после чего в скрипт вставлять LEFT JION, INNER JOIN, RIGHT JOIN

SELECT *
FROM table1 as t1 JOIN table2 as t2 ON t1.id=t2.id

ну примерно так. Кстати а зачем через джоин делать, через WHERE (table1.id=table2.id) нельзя чтоли? Только не говорите что дольше работает запрос так, я этого не переживу ))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.