0
Я очень смущен функцией подзапроса в MySQL.Ошибка в вложенных подзапросах
Для моего примера я использую 3 таблицы:
адр содержит адреса adr_acc содержит группы или пользователей, которые имеют доступ к адресам usr_grp содержит useres, принадлежащие к группе
select * from adr where
adr.adr_id in
(select ac1.adr_id from adr_acc as ac1 where
(
(ac1.acc_type = 'U' and ac1.acc_id = '".$s['user']."') or
(ac1.acc_type = 'G' and ac1.acc_id in
(select ug1.grp_id from usr_grp as ug1 where ug1.usr_id = '".$s['user']."')
)
)
)
я получаю ошибка:
1054 - Неизвестный столбец 'adr.adr_id' в 'IN/ALL/ЛЮБОГО подзапроса'
Что мне не хватает?
Можете ли вы разместить (соответствующие) определения столбцов? – Andomar
CREATE TABLE IF NOT EXISTS 'adr' ( ' id' VARCHAR (20) сопоставления latin1_german1_ci NOT NULL, ) CREATE TABLE IF NOT EXISTS 'adr_acc' ( ' adr_id' VARCHAR (20) сопоставления latin1_german1_ci NOT NULL, 'acc_type' VARCHAR (1) собирать latin1_german1_ci NOT NULL, ' acc_id' VARCHAR (20) сопоставления latin1_german1_ci NOT NULL, первичный ключ ('' adr_id', acc_type', 'acc_id') ) CREATE TABLE IF NOT EXISTS 'usr_grp' ( ' usr_id' varchar (20) collate latin1_german1_ci NOT NULL, 'grp_id' varchar (20) collate latin1_german1_ci NOT NULL, ПЕРВИЧНЫЙ КЛЮЧ (' usr_id', 'grp_id') ) –