使用select语句模拟表

A H*_*A H 0 sql sql-server select

类似的问题,以模拟表具有多个行只是SELECT语句 -这个问题问的一个单列多行的.

如何模拟具有多个列和行的表?

我已经做到这一点(多列单行):

SELECT 'John Doe' AS [Customer Name],
       '31' AS [Customer Age],
       'pizza' AS [Food]
Run Code Online (Sandbox Code Playgroud)

但不确定如何获取多行数据.

使用sql-server

Gor*_*off 5

使用values表构造函数:

SELECT v.*
FROM (VALUES ('John Doe', 31, 'pizza'),
             ('John Doe', 31, 'pizza')
     ) v(customer_name, customer_age, food);
Run Code Online (Sandbox Code Playgroud)

笔记:

  • 不要在列名中使用空格.它们使编写查询变得更加困难.
  • age是一个糟糕的专栏.相反,你应该有出生日期.
  • 只需使用所需的值重复值列表即可.