所以,我写了一个SQL查询,就像你一样,而且我偶然发现了一个问题。我想要做的是在每次唯一用户访问特定页面时在数据库中发出查询。独特性通过session_id()完成,因为这通常是相当可靠的。SQL查询 - 插入但只有当记录不存在时?
我想要的是一个SQL查询,它将一行数据插入到两列中,但只有在这两列没有相同的值时。
如果用户x
访问的页面命名page1
,然后在数据库中,它会记录如下图所示:
+------------+---------+
| page_name | user_id |
+------------+---------+
| page1 | x |
+------------+---------+
我将如何去写一个查询,检查表格看,如果数据是插入将是重复的?
我当前的查询如下(它只是一个标准插入查询):
INSERT INTO `page_views` (`page_name`, `user_id`) VALUES ('.$pageName.', \''.session_id().'\')
检查答案在这里: - http://stackoverflow.com/questions/16460397/sql-insert-into-table-only-if-record-doesnt-exist –
的[检查是否行存在可能的复制,否则插入](http://stackoverflow.com/questions/639854/check-if-a-row-exists-otherwise-insert) – Raj
[MySQL条件插入]的可能重复(http://stackoverflow.com/questions/913841/mysql-conditional-insert) –