mysql - SQL如何将列追加到单行结果集?

标签 mysql sql sql-server oracle

问题是由于需要返回用于 Web 服务的单行结果集而返回值。

例如,如果我有一个 select 语句当前返回一个包含 3 列和 1 行的结果集,有没有办法在它自己的列中“附加”一个值?新值可以是任意返回一行的任意选择的结果。

从 d 中选择 a、b、c,其中 a = 'id' 给出

col1   col2   col3
  a      b      c

新的选择应该给出:

col1   col2   col3   col4
  a      b      c    *NEW*

在这种情况下,任意表示不一定与原始 select 语句中的任何值或表相关。

我想知道如何在 Oracle 中执行此操作,但希望有一个使用标准 SQL 功能的解决方案,以便大多数数据库都能处理它。

编辑:通过NEW,我并不是指字符串文字“NEW”,而是指我想要“附加”的新选择语句的结果.

最佳答案

如果您想要一个新的 select 语句,可以通过两种方式实现。一种是选择中的选择:

select col1, col2, col3, 
       (select 'NEW' from d limit 1) as col4
from d

另一个是交叉连接:

 select d.col1, d.col2, d.col3, const.col4
 from d cross join
      (select 'NEW' as col4 from d limit 1) const

我使用一个简单的子查询作为示例。我认为您的子查询有点复杂。

关于mysql - SQL如何将列追加到单行结果集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17432604/

相关文章:

c++ - 长度未知时如何在 SQL Server 中存储 varbinary(max) 和 varchar(max) 数据(使用 C++ ODBC)

用于数据库支持集合的 Java 库

sql-server - SQL Server - 日期字符串

c# - 为什么打开 SSMS 会影响控制台应用程序

java - 如何使用jdbc和tomcat连接MySQL数据库

mysql - 如何在mysql中选择符合特定条件的行对

sql - 合并以显示最新的非空值

mysql - 在一条记录sql中连接多个字段

javascript - PHP/mysql - 如何将变量从类传递到单独的 index.php?个人资料页面?

MySQL - EER 表中的双主键