У меня есть таблица для пользователей. Но когда пользователь вносит какие-либо изменения в свой профиль, я сохраняю их в таблице темп, пока не одобрю их. Затем данные копируются в текущую таблицу и удаляются из таблицы temp.
Я хочу добиться того, что при просмотре данных на панели администратора или на странице, где пользователь может дважды проверить перед отправкой, я хочу написать один запрос, который позволит мне извлекать данные из обеих таблиц, где идентификатор в обоих равны $ userid. Затем я хочу отобразить их в виде таблицы, где в левом столбце отображается старое значение, а новое значение отображается в правом столбце.
Я нашел несколько решений sql, но я не уверен, как их использовать в php для эхо-результатов, поскольку столбцы в обоих имеют одно и то же имя.
Добавление AS
к имени столбца позволит вам псевдонимы с другим именем.
SELECT table1.name AS name1, table2.name AS name2, ... FROM table1 INNER JOIN table2 ON ...
Если вы используете ключевое слово AS SQL, вы можете переименовать столбец только для результата этого запроса.
SELECT `member.uid`, `member.column` AS `oldvalue`, `edit.column` AS `newvalue` FROM member, edit WHERE `member.uid` = $userId AND `edit.uid` = $userId;
Что-то в этом направлении должно работать на вас. Хотя SQL не является моей сильной стороной, поэтому я уверен, что этот запрос не будет работать так, как есть, даже в таблице с правильными полями и значениями.
Вот ваш требуемый запрос. Предположим, у вас есть, например, поле имени в двух таблицах. Таблица 1 для входа в систему и таблица 2. Теперь
SELECT login.name as LoginName , information.name InofName FROM login left join information on information.user_id = login.id
Теперь вы можете использовать LoginName
и InofName
везде, где вам нужно.
Используйте MySQL JOIN
. И вы можете получить все данные из 2 таблиц в одном запросе mysql.
SELECT * FROM `table1` JOIN `table2` ON `table1`.`userid` = `table2`.`userid` WHERE `table1`.`userid` = 1