mysql从包含重复项的列表中选择

标签 mysql

<分区>

MySQL 中是否有任何方法可以使以下查询返回 3 个结果而不是 2 个?

select * from products p where p.id in (303022, 287769, 303022)

最佳答案

如果您想要两次 303022 的值,您可以对该行的查询进行 UNION ALL,否则,对于该查询,它将始终只返回两个(假设 id 在表中不重复):

select * from products p where p.id in (303022, 287769)
UNION ALL 
select * from products p where p.id = 303022

关于mysql从包含重复项的列表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19729173/

相关文章:

php - 如果我无法从 mysql 检索值该怎么办

c# - Entity Framework 在重建时插入初始数据

mysql - 将组中的最大值附加到结果的每一行?

php - 具有多对多关系的 Doctrine Two Entities 中的问题,cli 工具在创建模式时报告错误(SchemaException)

php - 使用 PDO 插入值 '000' 结果为 NULL

php - Group_concat 或 PDO::FETCH_ASSOC

php - 禁止发布 403,在 justhost 上的 wordpress 站点

MySQL查询缓存,复杂SQL查询

mysql - 需要帮助提高 SQL 性能(子查询与连接)

php - Doctrine 不在 MySQL 中生成跨数据库外键约束