我有兩個表。一張桌子有ID,文字。另一個有ID,用戶名。SQL選擇語句併發症
當有人登錄到頁面時,他們有一個用戶名ID,所以用戶名有一個值。
我要選擇從表1中,其中ID表二和用戶名該ID的值相匹配的ID和TEXT抓住是相同記錄的人。
我有兩個表。一張桌子有ID,文字。另一個有ID,用戶名。SQL選擇語句併發症
當有人登錄到頁面時,他們有一個用戶名ID,所以用戶名有一個值。
我要選擇從表1中,其中ID表二和用戶名該ID的值相匹配的ID和TEXT抓住是相同記錄的人。
更換t1
和t2
與適當的表名。 。我不知道你使用的是什麼語言的代碼,但已登錄的用戶的價值代替
SELECT t1.ID, t1.TEXT
FROM t1
LEFT JOIN t2 on t2.ID = t1.ID
WHERE t2.username = '<some username>'
您的意見後,這裏的新查詢:
$Query = "SELECT LandingPage_Notification.ID, LandingPage_Notification.Title, LandingPage_Notification.HTML,LandingPage_Notification.DateExpiry FROM LandingPage_Notification LEFT JOIN Track_Notification on Track_Notification.ID = LandingPage_Notification.ID WHERE Track_Notification.Track_UserID= '$userName'";
你應該看看SQL中的聯接。
事情是這樣的:
$query = "SELECT a.ID, a.TEXT FROM table1 a JOIN table2 b ON a.id=b.id WHERE b.id = 'ID of person logged in';
這是一個僞查詢,但你也許可以將其粘貼到您的查詢編輯器來得到結果。
$用戶名是一個變量,可能是作爲URL中的變量發送的。
SELECT ID, TEXT FROM [Table 1] WHERE [ID]=(SELECT TOP 1 [ID] FROM [Table 2] WHERE Username='$Username')
您沒有指定數據庫類型,因此請記住使用適當的限定符封裝您的表。以上對於SQLServer和Access非常有用,但您可能需要使用`而不是MySQL。
即時消息寫在PHP中,這仍然是好的 – CFleming
是的,這將適用於MySQL。只需用您的$ username變量替換即可。 –
steinmas
它不工作,我不知道爲什麼。 – CFleming