很抱歉,如果該標題有點複雜......我被ORM寵壞了,我的原始SQL技能顯然很差。用他們的用戶名選擇一個用戶,然後使用他們的UID從另一個表中選擇數據
我正在寫一個鏈接到vBulletin論壇的應用程序。用戶使用其論壇用戶名進行身份驗證,並且查詢很簡單(從用戶表中通過用戶名選擇)。下半年更爲複雜。還有一個訂閱表,其中有一個時間戳,但主鍵是一個用戶標識,而不是用戶名。
這是我到目前爲止已經摸索出:
SELECT
forum.user.userid,
forum.user.usergroupid,
forum.user.password,
forum.user.salt,
forum.user.pmunread,
forum.subscriptionlog.expirydate
FROM
forum.user
JOIN forum.subscriptionlog
WHERE
forum.user.username LIKE 'SomeUSER'
不幸的是這將返回subscriptionlog表,這是有道理的,因爲在它沒有用戶名字段的全部。是否有可能使用我從forum.user.userid獲得的用戶標識獲取訂閱日誌行,還是需要將它分解爲兩個查詢?
謝謝!
課#1,除非你知道你需要它,爲什麼不使用盲'join'。這完全表達爲「交叉連接」,並且在適當的情況下_can_會有用 - 但通常不會。只需使用兩個表中的id列進行「內部連接」即可。 –