如何查找数据库中是否存在具有特定值的字段

时间:2014-02-17 00:27:51

标签: php mysql sql

我正在网上构建应用程序,但我想知道是否有任何方法可以在数据库中存在具有特定值的字段。 例如,我想检查表Profile( Profile_Id, User_Id, Address, City...)中是否 存在User_Id = 20的用户。我想检查这个的原因是,如果用户存在,我希望当我按下表单中的按钮更新表格的字段时,如果用户不存在则在表格中插入新行。

例如:

If( User_Id exist in table Profile(this is the check statement))

$update_query="update Profile...........

else
$update_query=mysql_query("Insert into Profile..............

请帮帮我......提前致谢

2 个答案:

答案 0 :(得分:0)

您正在寻找

INSERT INTO Profiles (user_id,name,age) VALUES (1,"AL","33")
ON DUPLICATE KEY UPDATE name="Alan", age=34;

答案 1 :(得分:0)

此检查的SQL查询是:

SELECT 1
FROM   Profile
WHERE  User_Id = ?

您可以将?替换为要检查的值(例如20)。如果您使用PDO,则可以使用PDOStatement's bindValue method完成替换。

如果用户存在,将返回一列的结果集。如果不是,则返回空结果集。