php mysql 检查现有语法

标签 php mysql syntax

我有一个从 1 到 6(含)的订购系统,订单号由用户选择分配给表featured 中的新闻。当用户保存新闻订单时,featured 表中会插入一个新行,其中包含以下字段:id_newsid_userid_categoryorder

我正在寻找一种更好的语法来检查是否已经有订单 Y 的客户端 X 的新闻。

现在,我正在单独的查询中执行以下操作:

  1. 用户选择将新闻 1241 添加到订单号 3
  2. 脚本检查是否存在订单号为 3 的客户端 X 的任何新闻
  3. 如果存在,则会将其删除
  4. 添加新的精选新闻。

有没有办法用更少的操作/代码来完成所有这些?

最佳答案

使用重复 key 更新

假设 (id_user,order) 是唯一键,那么您只需插入新值,如果订单已存在,则使用新的 id_news 更新它.

INSERT INTO `featured` VALUES (...) ON DUPLICATE KEY UPDATE `id_news`=VALUES(`id_news`)

关于php mysql 检查现有语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10900680/

相关文章:

mysql - 选择具有最高日期的行

Ruby:使用键/值数组设置新哈希

javascript - 了解两种 Javascript 语法之间的差异

php - 使用 PHP(sqlsrv 扩展)将 MSSQL 日期时间打印到 html 时出现问题

php - JOIN中如何返回主表内容?

php - 在 Laravel 中为 mysql 数据库制作模型和 Controller ?

mysql服务器在另一个时区,需要正确的时间

mysql - 关于带有空字符串的mysql where子句

java - 返回类型错误-返回类型不兼容

php - 如何在 PHP 中使用带有 json_encode() 的瑞典字母?