我有一个名为messages的表,其中包含带有类型文本的字段(电子邮件)。 例如,此字段值为(email@domain.com,example@any.net。notme @ yahoo.com,me @ yahoo.com)。 当我登录(me@yahoo.com)以显示只有(me@yahoo.com)值的邮件时,我想要的是什么。 怎么能用mysql& php?
答案 0 :(得分:3)
SELECT * FROM MESSAGES WHERE EMAIL = 'me@yahoo.com';
但是EMAIL应该被编入索引以避免必须扫描整个表以查找匹配的行。类型TEXT
可能是不必要的。电子邮件不可能超过100个字符,因此可能将类型设置为VARCHAR(100)
或类似。
或者假设每个用户都有一个id,也许最好通过USER_ID(也应该被索引)将它们取出:
SELECT * FROM MESSAGES WHERE USER_ID = ?;
其中USER_ID是USER表中的ID或等效ID。