Выберите столбец соответствия в таблице различий - PullRequest
0 голосов
/ 14 февраля 2011

Попытка получить заголовок для отфильтрованного результата Название POS-клуба и название элемента Отфильтрованная запись, где совпадают значения memberid и между двумя датами

Вот моя структура таблицы

tblPosClub

  • PosClubID
  • ClubID
  • StaffID
  • MemberID
  • ItemID
  • ItemQuantity
  • ItemTotal
  • PosClubDate

tblClub

  • ClubID
  • ClubTitle
  • ClubDesc

tblItem

  • ItemID
  • StoreID
  • ItemTitle
  • ItemDesc
  • ItemQuantity
  • ItemPrice

Я хочу получить

      * 
 From tblPosClub
Where (tblPosClub.MemberID = @Memberid) 
  AND (tblPosClub.PosClubDate >= @AfterDate) 
  AND (tblPosClub.PosClubDate < @BeforeDate)

... и tblClub.ClubTitle + tblItem.ItemTitle, которые соответствуют отфильтрованной строке. Могу ли я узнать, что мне следует изменить с помощью этой команды sql?

    SELECT tblPosClub.PosClubID, 
           tblPosClub.ClubID, 
           tblPosClub.MemberID, 
           tblPosClub.ItemID, 
           tblPosClub.ItemQuantity, 
           tblPosClub.ItemTotal, 
           tblPosClub.PosClubDate, 
           tblClub.ClubTitle, tblItem.ItemTitle
      FROM tblPosClub 
CROSS JOIN tblClub 
CROSS JOIN tblItem
     WHERE (tblPosClub.MemberID = @Memberid) 
       AND (tblPosClub.PosClubDate >= @AfterDate) 
       AND (tblPosClub.PosClubDate < @BeforeDate)

Спасибо заранее = D

1 Ответ

1 голос
/ 14 февраля 2011

Используйте INNER JOIN

FROM tblPosClub INNER JOIN tblClub
    ON tblPosClub.ClubID = tblClub.ClubID
  INNER JOIN tblItem
    ON tblPosClub.ItemID = tblItem.ItemID

Для получения дополнительной информации о различных типах соединения см. Википедия

...