#sql
#sql
Вопрос:
Название вопроса, вероятно, сбивает с толку, поэтому я попытаюсь прояснить это.
У меня есть два столбца в таблице. Состояние и местоположение. У меня есть два внешних ключа в таблице. Уведомление.fkState и уведомление.fkLocality. Они оба связаны с первичным ключом другой таблицы. Расположение.pkLocation Я хочу, чтобы ПСЕВДОНИМЫ состояния и местоположения совпадали с местоположением.Имя из таблицы Location в соответствии со значением внешнего ключа связало первичный ключ pkLocation.
Есть ли оператор типа
SELECT Location.Name(WHERE Notification.fkState=Location.pkLocation) AS State, Location.Name(WHERE Notification.fkLocality=Location.pkLocation) AS Locality FROM Notification INNER JOIN Locality ON Notification.fkState=Location.pkLocation AND Notification.fkLocality=Location.pkLocation
Мой И в настоящее время является ИЛИ, потому что, когда это AND…it ничего не отображает.
Любая помощь?
Комментарии:
1. Вы пропустили часть запроса? Извините, или вы когда-нибудь писали SQL раньше?
2. Я все это выписал, я просто не стал делиться всем этим.
Ответ №1:
SELECT S.Name AS Locality, N.Name AS State
From Notification N
Inner Join Location S on N.fkstate=S.pkLocation
Inner Join Location L on N.fkLocality=L.pkLocation
Комментарии:
1. Но мне нужно иметь псевдонимы для состояния и местоположения в инструкции if Location. Тип=1 это состояние, и если местоположение. Тип=2 это локальность
2. Есть ли у вас какой-либо столбец состояния в какой-либо таблице?
3. У меня есть сетка со столбцом состояния и столбцом местоположения, но пока, поскольку у меня нет псевдонимов, я просто вызываю поле местоположения для обоих, поэтому, конечно, оно отображает одни и те же данные
4. Но он должен иметь возможность различать местоположение. Тип = 1 — это столбец состояния, или Тип = 2 — это местоположение
5. Пожалуйста, отправьте схему вашей таблицы и обновите ее в вашем вопросе