У меня есть две таблицы в системе. Я пытаюсь сделать ВИД, который представляет их обоих вместе, и я не уверен, как это можно сделать или даже если это можно сделать.
Животные
PetId INT PK
Name VARCHAR(100)
PetOtherNames
PetID INT PK FK
Name VARCHAR(100) PK
Итак, у меня есть таблица домашних животных. Имя (в этой таблице) является их формальным общим именем. У каждого питомца могут быть имена от нуля до многих. Эти имена никогда не отображаются, НО должны использоваться в поисковом запросе.
Итак, давайте посмотрим на некоторые данные.
Данные о домашних животных
1. Fred
2. Barney
3. Foo
4. Megan Fox (boom tish)
PetsOtherName Data
2. B-b-b-Barney
2. Bannana Barney
2. Banannarama
4. TapTap
Итак ... если я сделаю ПРОСМОТР этих двух таблиц, я ожидаю следующих результатов ...
SELECT *
FROM PetsView
ORDER BY PetId, Name
1. Fred
2. B-b-b-Barney
2. Barney
2. Bannana Barney
2. Banannarama
3. Foo
4. Megan Fox
4. TapTap
И тогда это позволит мне сделать следующее ...
SELECT PetId, Name
FROM PetsView
WHERE CONTAINS(Name, 'Fox')
... и возвращает 4. Фокс
SELECT PetId, Name
FROM PetsView
WHERE CONTAINS(Name, 'Fox')
... и возвращает 4. TapTap
ура :) 1030 *
PS. Я не уверен, что сформулировал название этого поста, поэтому, пожалуйста, не стесняйтесь редактировать его соответствующим образом (или предложите лучший заголовок, чтобы я мог его обновить).
Обновление: это для sql2008, но я предполагаю, что результатом будет tsql .. поэтому он должен / мог бы применяться по всем направлениям.