mysql - 查找,必要时在一条 SQL 语句中插入
问题描述
MariaDB 10.2.32。有一个动态查找表 - 整数自动增量主键ID
,varcharName
上面有一个唯一索引。问题:是否可以在一条SQL语句中实现“有名字就返回对应的ID,没有就插入并返回生成的ID”的逻辑?
非常欢迎非标准的、特定于 MySQL 的 SQL 扩展。insert ignore
并且insert... on duplicate key
非常接近,除了两者都没有返回ID。但我几乎不了解供应商 SQL 的最新版本。
编辑:也insert...returning
,但这需要 MariaDB 10.5。
存储过程对我不起作用 - 它是共享主机设置,产品服务器不允许 SP。
将 PHP 7.3 与 Mysqli 一起使用。
编辑:我知道如何在多个语句中做到这一点。问题是,一个人能做到吗?
解决方案
推荐阅读
- discord - 是否可以从不和谐的机器人中打印出 IndexError?
- pyiron - PyIron 中直接包含 lammps 命令
- python-3.x - 为 IDLE 设置 Python 环境变量?
- java - Spring security ignore url 不适用于 we security ignore 方法
- javascript - 如何在 React 中正确使用 async/await 和 Array.filter?
- android - Preference.setLayoutResource(R.layout.my_custom_layout) 不接受 OnClickListener
- xslt - XSLT xsl:选择探针
- javascript - 创建新记录后重置 Lightning-record-form
- java - 多模块 Maven 项目和 Docker:找不到工件?
- bash - 通过在文件名中添加数字前缀来重命名文件