powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Вывод нескольких таблиц SQL, в 1 <table>
28 сообщений из 28, показаны все 2 страниц
Вывод нескольких таблиц SQL, в 1 <table>
    #38606857
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброе время суток.
Оказалось что на курсовую осталось меньше времени чем я предполагал, а работы непочатый край.
Сейчас стоит задача в следующем.
У меня есть БД SQL, в ней сама БД (BankClient), 1 таблица (Client), в это таблице есть след. поля: ( PID, Name, Phone, Contract_number, Credi ). Вопрос заключается в след. как сделать что бы в 1 пользователя было несколько (Contract_number).

Если я правильно понял это должно выглядит след. образом (скрин в вложении)

Если я правильно понял надо создавать ещё 1 таблицу, в которой будут хранится сами (Contract_number).

Я только начал изучать это всё и не совсем понятно как это всё реализовать. Сейчас есть вывод 1 таблицы. Может оно до ужаса криво, но, работает :)


Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
if (($_SESSION['name'] == $row['name']) && ($_SESSION['pass'] == $row ['password'])){
                $qr_result = mysql_query("SELECT * FROM " . $db_table_to_show)
		or die(mysql_error());	
		// выводим на страницу сайта заголовки HTML-таблицы
                echo '<table border="1">';
		echo '<thead>';
		echo '<tr>';
                echo '<th>ИНН клиента</th>';
		echo '<th>Ф.И.О.</th>';
		echo '<th>Телефонный номер</th>';
		echo '<th>Сумма кредита</th>';
		echo '</tr>';
		echo '</thead>';
		echo '<tbody>';                           
		// выводим в HTML-таблицу все данные клиентов из таблицы MySQL 
                while($data = mysql_fetch_array($qr_result)){ 
                    echo '<tr>';
                    echo '<td>' . $data['PID'] . '</td>';
                    echo '<td>' . $data['Name'] . '</td>';
                    echo '<td>' . $data['Phone'] . '</td>';
                    echo '<td>' . $data['Credit'] . '</td>';
                    echo '</tr>';
		}	
                    echo '</tbody>';
                    echo '</table>';
            } else { echo "Неверно указано имя пользователя или пароль. Повторите попытку ешё раз."; }; 
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38606863
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не совсем понял как здесь заливать фото, вот:
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38606870
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InHale,

Можно писать через запятую. Но если хочется усложнить курсовик, то
user_phone
id user_id phone

и JOIN..
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38606878
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SharuPoNemnogu
Если бы можно было через запятую... я бы это уже сделал... :D

Тоесть создать таблицу с полями?:

user_phone
id user_id phone

я не совсем понял что нужно делать...

P.S. (я в SQL разбираюсь неделю, могу очень глупые вопросы спрашивать, заранее прошу прощения )
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38606881
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InHale,

ну тут даже из названия полей вроде понятно что к чему). Да это таблица с полями, в которой хранятся номера телефонов привязанные по id пользователей.
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38606982
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SharuPoNemnogu

что здесь выбрать ?) или RESTRICT оставить ?
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38607015
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
создаёшь еще одну таблицу с полями id_client и contact_number например, дальше связываешь поля id_client с полем из таблицы Client PID. при выводе данных делаешь запрос
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38607051
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sanjar88
Что-то чуть запутался. На данный момент у меня есть есть 2 табл. "Client" & "Contract_number". В таблице "Client" ключевое поле PID. в табл. "Contract_number" ключевое поле "user_ID" между этими полями сделал связь. phpmyadmin написал такой запрос


Код: plsql
1.
2.
3.
ALTER TABLE `Contract_number` ADD FOREIGN KEY ( `user_ID` ) REFERENCES `BankClient`.`Client` (
`PID`
) ON DELETE RESTRICT ON UPDATE RESTRICT ;



Как теперь можно вывести данные что бы они были как в примере на скриншоте?...
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38607060
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
SELECT Client.PID, Client.name, Contract_number.number
FROM Client INNER JOIN Contract_number ON Client.PID = Contract_number.user_id;


под себя подредактируй
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38607076
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тоесть ты понял всю суть? удаляешь из первой таблицу ячейку с номером телефона, и пишешь номера во 2ой таблице, и там где user_id указывается уникальный номер клиента т.е. PID
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38607766
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sanjar88
Насколько я понял:
Таблица 1 (общая информация о клиенте)
(в этой таблице поле PID уникальное)


Таблица 2 (таблица где хранятся номера контрактов)



Связь между этими таблицами по полям PID & user_ID
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38608096
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а 2 ая таблица почему не имеет собственного id?
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38608122
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и еще, в твоём примере указано что в поле контракта есть и текстовые данные, а ты указал полю только числовые
просто выполни этот запрос у себя в sql
Код: php
1.
2.
SELECT Client.PID, Client.name, Client.Phone, Contract.contract_number, Client.Credit
FROM Client INNER JOIN Contract ON Client.PID = Contract.user_id;
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38608205
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sanjar88,


Тоесть и вторая таблица должна иметь "PID" ( и по них связать табл? ) или отделительный ID с аутоинкрементом?


Вот выполнение комманды :
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38608295
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет, 2ая таблица должна иметь просто PID.
а результат вернул 0 потому что у вас во 2ой таблице нету записей связанных с 1ой.
введите пару записей во 2ую таблицу где поле user_id соответствует полю PID в таблице Client и выполните запрос заного
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38608798
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sanjar88,

Я чуть запутался с 2й таблицей и какие связи должны быть...

Добавил 2 элеммента в табл.


Добавления ещё 1 эл. по PID 1й табл эррор


Выполнение комманды вернуло такой результат
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38609775
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ошибка возникла из за того что у вас стоит первичный ключ на поле User_ID и дубликатов он не принимает, удалите связи они не нужны тут, и просто выполняйте ранее данный запрос
вы вбили в user_id 2223454546, а у вас есть запись с таким PID?
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38609791
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если вам совсем туго уже с этим напишите мне fatality1@Mail.ru icq 391849484
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38610291
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sanjar88,

Удалил первичный ключ с user_ID и удалил связи между таблицами. (во вторую таблицу добавил ещё данных)



Выполнил запрос:





Я прошу прощение за то что я так глуплю и такие вопросы задаю...
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38610351
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
InHale,

Возможно ли сделать во такой вот вывод информации?:
[img=http://s020.radikal.ru/i720/1404/bb/ff4e30f5cbae.png ]
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38610728
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в mysql вроде никак, можно в выводе на php составить такой
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38611126
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InHaleInHale,

Возможно ли сделать во такой вот вывод информации?:


Ну совсем прям такой получить нельзя )) С точки зрения SQL такой вывод вообще не соответствует стандартам :) (хотя как вариант, может рисунок не точно соответствует тому, что надо... если так, то скорее всего я могу помочь :) )

Итак... Как вариант, мы можем склеить все номера одного пользователя в одной строке (если склеим символом "\n", то получим нужный вывод).
Для этих целей поможет Group by (надеюсь про группировку вывода уже почитали, это основы синтаксиса sql) и group_concat.

Приблизительно так:
Код: sql
1.
2.
SELECT Client.PID, Client.name, Client.Phone, GROUP_CONCAT(Contract.contract_number SEPARATOR '\n') `contract_number`, Client.Credit
FROM Client INNER JOIN Contract ON Client.PID = Contract.user_id Group by `Client.PID`



Проверить не могу )) Но должно работать, если ещё ничего не забыл (меня тут на MVC архитектуру подсадили, с этими моделями уже даже синтаксис sql начинаю забывать )
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38611138
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sanjar88,

Я понимаю что в SQL нельзя.
Может у Вас есть пример кода на php ?)
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38611325
InHale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Програмёр,

"#1054 - Unknown column 'Client.PID' in 'group statement' "
при формировании запроса error
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38611338
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InHaleПрограмёр,

"#1054 - Unknown column 'Client.PID' in 'group statement' "
при формировании запроса error
эммм... ну там же явная ошибка синтаксиса? ))) Я в обратные кавычки взял и имя таблицы и название поля (оно посчитало что это всё название поля)... уберите обратные кавычки, или поставьте их правильно, и всё заработает (если ещё где в синтаксисе не ошибся)
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38611489
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InHale,
а тебе когда надо это все сдавать ? просто с временем туговато у меня, если хочешь отправь исходники на почту мне fatality1@mail.ru, на след недели сделаю на php
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38611519
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sanjar88InHale,
а тебе когда надо это все сдавать ? просто с временем туговато у меня, если хочешь отправь исходники на почту мне fatality1@mail.ru, на след недели сделаю на php

Добрая душа, или попытка заработать? (мне всё-ровно, просто интересно)
...
Рейтинг: 0 / 0
Вывод нескольких таблиц SQL, в 1 <table>
    #38612065
Sanjar88
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
парень запарился, вот бы мне так помогали с моими вопросами, заработать? что тут заработаешь то, 10-15 баксов? лучше репу заработать чем эти 10-15 баксов
...
Рейтинг: 0 / 0
28 сообщений из 28, показаны все 2 страниц
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Вывод нескольких таблиц SQL, в 1 <table>
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]