Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
1 / 1 / 4
Регистрация: 12.02.2014
Сообщений: 117

Считывание данных из несколько таблиц одновременно

29.05.2018, 03:28. Показов 1271. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.

У меня в phpMyAdmin существует БД, в которой 2 таблицы.

Мне нужно одновременно считывать и отображать данные из обеих таблиц...

Подключение к ним я сделал, считывать данные и отображать из по отдельности я могу, а вот как считать данные и отобразить их сразу с двух таблиц я хз..

Пытался делать так:
PHP
1
2
3
4
5
while (  ($result_1=mysqli_fetch_array ($connection_to_the_table_1)) && ($result_2=mysqli_fetch_array($connection_to_the_table_2))  )
{
     echo "данные из таблицы 1: $result_1[danie]";
     echo "данные из таблицы 2: $result_2[danie]";
}
Но так не получается...

Может кто знает как считать данные сразу из нескольких таблиц,
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.05.2018, 03:28
Ответы с готовыми решениями:

Можно ли через INSERT вставить данные полей в несколько таблиц одновременно?
Вообщем можно ли с помощью оператора INSERT сразу вставить данные полей в несколько таблиц одновременно???Может какой-нить инсерт с...

Не добавляет данные в несколько таблиц одной базы данных phpmyadmin
Народ, помогите, не могу разобраться, таблицы связанны по ID <? ini_set('error_reporting', E_ALL); ini_set('display_errors',1); ...

QTableWidget как создать несколько таблиц одновременно?
Здравствуйте, мне нужно создать n таблиц как такое реализовать?

8
 Аватар для Dilshod Komilov
40 / 41 / 13
Регистрация: 10.08.2016
Сообщений: 310
29.05.2018, 07:54
Саир_Крон, Думаю нужно просто написать select запрос, который читаеть из оба таблицы типа
MySQL
1
SELECT * FROM table1 ,table2
0
1 / 1 / 4
Регистрация: 12.02.2014
Сообщений: 117
29.05.2018, 08:06  [ТС]
Цитата Сообщение от Dilshod Komilov Посмотреть сообщение
Думаю нужно просто написать select запрос, который читаеть из оба таблицы типа
Я тоже так думал... Но тогда возникает проблема с совподающими данными, такими как id, data-time, и некоторыми другими...
0
 Аватар для Dilshod Komilov
40 / 41 / 13
Регистрация: 10.08.2016
Сообщений: 310
29.05.2018, 08:14
Цитата Сообщение от Саир_Крон Посмотреть сообщение
Но тогда возникает проблема с совподающими данными, такими как id, data-time, и некоторыми другими...
Напиши в запросе какой столбец тебя нужно. Типа
MySQL
1
SELECT table1.id as table1_id,table2.id as table2_id,table2.data-time FROM table1,table2
Ты можеш не выбрат столбцы которые тебя не нужны
0
1 / 1 / 4
Регистрация: 12.02.2014
Сообщений: 117
29.05.2018, 08:30  [ТС]
Я тут в интернете посидел, полазил касательно моей проблемы и понял, что можно сделать типо того:
PHP
1
$vasa_pypkin = mysqli_query ( $connection_to_the_db, "SELECT (t1.id , t1.data-time , t1.danie_1 , t1.danie_2) , (t2.id , t2.data-time , t2.danie_1 , t2.danie_2) FROM 'table1' , 'table2' "
И тогда можно будет использовать данные сразу из 2-х таблиц, примерно вот так:
PHP
1
2
3
4
5
6
7
8
while ( $result=mysqli_fetch_array($vasa_pypkin) )
{
     echo "данные 1 из таблицы 1: $result[t1.danie_1]";
     echo "данные 1 из таблицы 2: $result[t2.danie_1]";
 
     echo "данные 2 из таблицы 1: $result[t1.danie_2]";
     echo "данные 2 из таблицы 2: $result[t2.danie_2]";
}
Остается только проблема в том, что код на подключение и считывание данных из таблицы, нефурычит, как бы я его не пытался переписать...

Добавлено через 6 минут
Цитата Сообщение от Dilshod Komilov Посмотреть сообщение
table1.id as table1_id
То есть...

table1.id имеет имя table1_id
table2.id имеет имя table2_id

Выгружать данные из table1 и table1


В принципе можно попробовать... Только мне сейчас пипец как срочно бежать надо, буду на месте чеса через 2, а может даже завтра... Тогда то и попробую...
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
29.05.2018, 09:47
Цитата Сообщение от Саир_Крон Посмотреть сообщение
понял, что можно сделать типо того
Когда у тебя в запросе больше одной таблицы, то необходимо указывать минимум одно условие связи на каждую пару таблиц. Иначе у тебя возникает декартово произведение строк таблиц. Почитай про JOIN

Добавлено через 16 секунд
Цитата Сообщение от Саир_Крон Посмотреть сообщение
понял, что можно сделать типо того
Когда у тебя в запросе больше одной таблицы, то необходимо указывать минимум одно условие связи на каждую пару таблиц. Иначе у тебя возникает декартово произведение строк таблиц. Почитай про JOIN
0
377 / 319 / 73
Регистрация: 15.09.2017
Сообщений: 1,436
29.05.2018, 12:31
Саир_Крон, два последовательно идущих цикла не пробовали сделать?
0
1 / 1 / 4
Регистрация: 12.02.2014
Сообщений: 117
30.05.2018, 05:59  [ТС]
Написал код, используя в качестве примера, пример кода, предоставленный пользователем Dilshod Komilov

Код получился такого типа:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
 
    //Данные для подключения к Серверу и к БД
    $host = "localhost"; //Имя хоста для подключения к БД
    $username = "root"; //Пользователь базы данных
    $pass = ""; //Пароль к базе данных
    $name_db = "test"; //Название БД
 
 
    $name_tablicha_1 = "tets_tablicha_1"; //Название таблицы 1 
    $name_tablicha_2 = "tets_tablicha_2"; //Название таблицы 2 
         
    //---------------------------------------------------------------------------------
    //Подключение к Серверу
    $connection_to_the_server = mysqli_connect ($host, $username, $pass);
 
    //---------------------------------------------------------------------------------
    //Подключение к Базе Данных
    $connection_to_the_db = mysqli_connect ($host, $username, $pass, $name_db);
     
    //--------------------------------------------------------------------------------- 
    //Подключение и считывание последних актуальных данных из Таблиц
    $connection_to_the_table = mysqli_query ( $connection_to_the_db, "SELECT 
 
                                                                            $name_tablicha_1.id as t1_id ,
                                                                            $name_tablicha_1.data_time as t1_data_time ,
                                                                            $name_tablicha_1.danie_1 as t1_danie_1 ,
                                                                            $name_tablicha_1.danie_2 as t1_danie_2 ,
 
                                                                            $name_tablicha_2.id as t2_id ,
                                                                            $name_tablicha_2.data_time as t2_data_time,
                                                                            $name_tablicha_2.danie_1  as t2_danie_1 ,
                                                                            $name_tablicha_2.danie_2  as t2_danie_2 ,
 
                                                                    FROM $name_tablicha_1 , $name_tablicha_2 ORDER BY data_time DESC LIMIT 0,1 ");
 
    //--------------------------------------------------------------------------------- 
    //Визуальное отображение данных
    while ( $result = mysqli_fetch_array ($connection_to_the_table) )
    {
        echo "Данные 1 из таблицы 1: $result[t1_danie_1]";
        echo "Данные 2 из таблицы 1: $result[t1_danie_2]";
        echo "Данные получены на период: $result[t1_data_time]";
 
        echo "<br> <br>";
        echo "Данные 1 из таблицы 2: $result[t2_danie_1]";
        echo "Данные 2 из таблицы 2: $result[t2_danie_2]";
        echo "Данные получены на период: $result[t2_data_time]";
    }
?>
Но видимо я где-то, что-то неправильн написал, так как он не фурычит...
То он ничего не показывает, то ругается на запись:
PHP
1
while ( $result = mysqli_fetch_array ($connection_to_the_table) )
Может кто знает в чем может быть проблема?
________________________________________ ______________
Цитата Сообщение от Grossmeister Посмотреть сообщение
Почитай про JOIN
Постораюсь разузнать что не будь касательно этого.... Может найду полезные для себя кусочки кода, которые смогут решить мою проблему...

Цитата Сообщение от Phantom-84 Посмотреть сообщение
два последовательно идущих цикла не пробовали сделать
Даже не знаю о чем вы говорите... Но попробую и по этому вопросу, что нибуть разузнать...
0
209 / 191 / 49
Регистрация: 15.03.2016
Сообщений: 1,230
30.05.2018, 06:50
Цитата Сообщение от Саир_Крон Посмотреть сообщение
Мне нужно одновременно считывать и отображать данные из обеих таблиц...
JOIN, UNION ALL

в вашем вопросе должны быть исходные таблицы и желаемый результат
это же не форум телепатов
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.05.2018, 06:50
Помогаю со студенческими работами здесь

Запись значения dbedit в несколько таблиц одновременно
Всем привет. Имеется один dbedit и три таблицы ADOTable. Возможно ли значения из этого edit'a вписать в определенные поля сразу 3-х таблиц?...

Удаление данных из нескольких связанных таблиц одновременно
Ситуация такова,работа с БД,добавление палей в три таблицы(один к одному),изменение данных полей,удаление Добавление и изменение работают...

Считывание данных с двух таблиц
Ребята снова привет:):) В общем вопросы возникли, помогите плииз)) Готов пивком угостить если с Казани кто:): Сделал я с Вашей помощью...

Считывание таблиц данных из Excel в MathCAD
Подскажите пожалуйста как считать большой файл 1.xls (780 Мб) из Excel в MathCAD. Требуется просто напросто считать данные из экселя в сам...

Добавление данных в несколько связанных таблиц и просмотр этих данных на одной форме
Здравствуйте. Задача такая. Заполняю Персону, физическое лицо. таблица Персоны(п_код, наименованиеПолное, НаименованиеСокр, телефон,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru