#php
Вопрос:
Здравствуйте, как я могу выполнить два оператора select с двумя таблицами с разными наборами данных и получить их результат? И как я могу установить идентификатор пользователя, который находится в другой таблице?
$sql = "SELECT * FROM users_account WHERE NOT user_id= 'user_id'"; $sql2 = "SELECT * FROM super_admin WHERE NOT id = '$admin_id'";
Таблица для users_acount.
user_id user_fullname user_email password facility terms_and_conditions isApproved date
таблица для супер_админа.
id username password
Процесс заключается в том, что super_admin назначит пользователя, и в журналах он покажет, кто является администратором, принявшим этого пользователя.
Комментарии:
1. Можете ли вы изменить свою схему. Суперпользователем должен быть тип пользователя, а не таблица сама по себе. Таблица пользователей будет иметь внешний ключ к таблице user_table. Таблица user_type будет иметь, например: 1=gt;Суперпользователь, 2=gt;gt;Администратор, 3=gt;gt;gt;Модератор, 4=gt;gt;gt;gt;Гость, а в таблице пользователей будет поле с именем user_type_id, которое является внешним ключом соответствующего типа пользователя.
2. Я думаю, что не могу.
3. Вам нравится делать один для обоих столов?
4. @MainulHasan да, я бы хотел. Как я могу это сделать?
5. идентификатор супер_админа совпадает с идентификатором пользователя учетной записи пользователей?
Ответ №1:
Использование двух таблиц:
CREATE TABLE user_group ( id MEDIUMINT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, description VARCHAR(100) NOT NULL, PRIMARY KEY (id) ); INSERT INTO user_group (name, password) VALUES('Super User', 'Complete Access'); INSERT INTO user_group (name, password) VALUES('Moderator', 'Limited Access'); INSERT INTO user_group (name, password) VALUES('Guest', 'Web Users'); CREATE TABLE users ( id MEDIUMINT NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, password VARCHAR(100) NOT NULL, user_group_id INT NOT NULL, PRIMARY KEY (id), FOREIGN KEY (user_group_id) REFERENCES user_group(id) ); INSERT INTO users (name, password, user_group_id) VALUES('god', 'aaa666', 1); INSERT INTO users (name, password, user_group_id) VALUES('davo', 'xyx123', 2); INSERT INTO users (name, password, user_group_id) VALUES('prole', 'abc101', 3);