Mysql 如果SQL不返回结果,是否可以在SQL中获取查询值?
想象一下这个db表:Mysql 如果SQL不返回结果,是否可以在SQL中获取查询值?,mysql,sql,Mysql,Sql,想象一下这个db表: |id |value| |1a |a | |2b |b | |3c |c | 以及以下SQL: select * from bar b where b.id in (1,2,3,4) 是否有可能获得以下内容: |id |value | |1a |a | |2b |b | |3c |c | |4d |<null> | | id |值| |1a | a| |2b | b| |3c | c| |4d||
|id |value|
|1a |a |
|2b |b |
|3c |c |
以及以下SQL:
select * from bar b where b.id in (1,2,3,4)
是否有可能获得以下内容:
|id |value |
|1a |a |
|2b |b |
|3c |c |
|4d |<null> |
| id |值|
|1a | a|
|2b | b|
|3c | c|
|4d||
基本上,我想知道哪个查询参数没有返回值。您必须创建一个包含所有所需值的内联值。然后
将您的表左键连接到此:
select t1.id, t2.*
from (
SELECT 1 AS id UNION ALL SELECT 2 UNION ALL
SELECT 3 UNION ALL SELECT 4
) AS t1
LEFT JOIN bar AS t2 ON t1.id = t2.id
如果您能够将您的ID插入到它们自己的数据库表中,那么您可以使用如下内容
SELECT t1.id, t2.value
FROM (SELECT id FROM guids) as t1
LEFT JOIN table2 ON t1.id = t2.id
如果您有一个要查询的id
s列表,那么是的,但不使用该语法。@ShamSUP是的,可以肯定sql是哑的和错误的。我想知道什么是正确的sql来实现这一点。好吧,这将取决于你从哪里得到“硬编码”的ID,我有大约200个GUID,我需要对照一个表进行检查。guid是表的主键。是否可以将需要测试的guid放入自己的表中?@YaoChen在这种情况下,您必须建立一个查找表