Eu tenho uma consulta existente que gera dados atuais e gostaria de inseri-la em uma tabela Temp, mas estou tendo alguns problemas ao fazê-lo. Alguém teria alguma idéia de como fazer isso?
Aqui está um exemplo
SELECT *
FROM (SELECT Received,
Total,
Answer,
( CASE
WHEN application LIKE '%STUFF%' THEN 'MORESTUFF'
END ) AS application
FROM FirstTable
WHERE Recieved = 1
AND application = 'MORESTUFF'
GROUP BY CASE
WHEN application LIKE '%STUFF%' THEN 'MORESTUFF'
END) data
WHERE application LIKE isNull('%MORESTUFF%', '%')
Isso parece produzir meus dados atualmente da maneira que eu preciso, mas eu gostaria de passá-los para uma tabela temporária. Meu problema é que eu sou bastante novo nas Consultas SQL e não consegui encontrar uma maneira de fazer isso. Ou se é mesmo possível. Se não for possível, existe uma maneira melhor de obter os dados que estou procurando WHERE application LIKE isNull('%MORESTUFF%','%')
em uma tabela temporária?
sql
sql-server
ssms
scapegoat17
fonte
fonte
#temp
tabela que já existe ou seria necessário criar uma nova?LIKE ISNULL('%MORESTUFF%', '%')
sempre será o mesmoLIKE '%MORESTUFF%'
, não é? Como '% MORESTUFF%' (a string literal) nunca é nula?Respostas:
fonte
O SQL Server R2 2008 precisa da
AS
cláusula da seguinte maneira:A consulta falhou sem o
AS x
no final.EDITAR
Também é necessário ao usar o SS2016, teve que adicionar
as t
no final.fonte
A maneira mais rápida de fazer isso é usando o comando "SELECT INTO", por exemplo
Isso criará uma nova tabela, você não precisará criá-la antecipadamente.
fonte
Pessoalmente, eu precisava de uma mãozinha para descobrir como usar isso e é realmente incrível.
fonte
Você pode fazer isso assim:
Apenas verifique se as colunas estão correspondentes, tanto em número quanto em tipo de dados.
fonte
Tente o seguinte:
Por favor, use o alias com x para que não falhe no script e no resultado.
fonte
fonte
Isso é possível. Tente desta maneira:
fonte