1
我有表稱爲消息,其中有字段類型文本(電子郵件)。例如 ,此字段值爲([email protected],[email protected]。[email protected],[email protected])。 以及我用([email protected])登錄時只顯示具有([email protected])價值的郵件的內容。 怎麼可以用mysql做& php?如何按列/字段值選擇MySQL表中的行?
我有表稱爲消息,其中有字段類型文本(電子郵件)。例如 ,此字段值爲([email protected],[email protected]。[email protected],[email protected])。 以及我用([email protected])登錄時只顯示具有([email protected])價值的郵件的內容。 怎麼可以用mysql做& php?如何按列/字段值選擇MySQL表中的行?
SELECT * FROM MESSAGES WHERE EMAIL = '[email protected]';
但EMAIL應該被索引以避免掃描整個表以找到匹配的行。並且輸入TEXT
可能是不必要的。電子郵件不可能超過100個字符,因此可能將其類型設置爲VARCHAR(100)
或類似。
或給予每個用戶都會有一個ID,它也許最好把他們從由USER_ID(應該也被編入索引):
SELECT * FROM MESSAGES WHERE USER_ID = ?;
其中USER_ID是在user表或等同的ID。
感謝理查德, 但我的想法是避免建立另一個表來保存用戶ID和消息,這取決於一對多的關係,所以我認爲會有這種想法的方式。 – 2011-04-10 12:35:25