2013-12-23 46 views
-4

如何從以前登錄過的同一個人記錄的MySQL中檢索數據? 她記錄/保存她的日常活動。 該表如下:來自MySQL的檢索數據

學生

stu_id stu_name stu_pass 
101  sara  1234 
102  bob   1133 

活動

act_id stu_id act_name 
1  101  badminton 
2  101  tennis 
3  102  volleyball 
4  101  hockey 
5  102  football 

如何列出,只有薩拉(stu_id:101)進行的活動?

+3

「SELECT act_name FROM ACTIVITY WHERE stu_id = 101」? – SpiderLinked

+1

「是否由之前登錄過的同一人員記錄?」......這讓我覺得答案更復雜,但在我們回答之前需要提供數據,代碼等。 –

+0

贊同downvote。研究不足......因爲這可能是(或許)這樣的基本SQL – Smandoli

回答

0
SELECT `act_name` 
FROM `activity` 
WHERE `stu_id` IN (SELECT `stu_id` WHERE `stu_name` = 'sara') 

不過,我會想象stu_id是主,和索引,這樣你就不會需要一個嵌套查詢,而直接查詢。因此製作它;

SELECT `act_name` 
FROM `activity` 
WHERE `stu_id` = 101 
3
SELECT a.stu_name, b.act_name 
FROM student a INNER JOIN activity b on a.stu_id = b.act_id 
WHERE a.stu_id = 101 
0

保存的loged親自

的stu_id之後,你可以(使用PDO來代替:stu_id在用戶登錄stu_id):

SELECT * FROM ACTIVITY WHERE stu_id = :stu_id 
0
SELECT * 
FROM `STUDENT` t1 
JOIN `ACTIVITY` t2 ON t1.stu_id = t2.stu_id 
WHERE t1.stu_id = 101;