Jump to content
Moohsilva

Dúvida com query SQL Server (RESOLVIDO)

Recommended Posts

Moohsilva

Boas,

Tenho uma query em mãos que envolve duas tabelas, e que preciso de uma ajudinha.
A tabela (Tbl_Turnos) com a seguinte estrutura: Base_de_Dados_2.png

E com os seguintes registos: Base_de_Dados_1.png

De seguida a tabela (Tbl_Projetos_Nomes_Pessoas) com a seguinte estrutura: Base_de_Dados_5.png

E a mesma com os seguintes registos de exemplo: Base_de_Dados_3.png 

Contrui a seguinte query:Base_de_Dados_5.png
O problema que detectei com estes dados (de exemplo para fins de teste) é que só consegui identificar registos cujas datas pertencem aos turnos da "Manhã" e "Tarde", apenas não consigo identificar o registo com o da "Noite" .. Sei que tem haver com os valores das horas, penso que o sql assume apenas numeros e não faz nenhuma distinção pelo campo ser time apenas faz a query com base em numeros e como não pertence ao intervalo de valores que tenho na (Tbl_Turnos) nunca me vai aparecer nenhum registo de turno da noite.

Alguma sugestão de como solucionar este problema? 

Edited by Moohsilva

"Qualquer um pode escrever um código que o computador entenda. Bons programadores escrevem códigos que os humanos entendam."

Share this post


Link to post
Share on other sites
jsWizard

Viva!

Não li o teu post todo.. mas só de olhar para os teus SELECTs dá para ver que referes duas tabelas mas não fazes o join (por ID_TURNO).. não era suposto o ID_TURNO ser a ligação entre as tabelas?

 

Share this post


Link to post
Share on other sites
Moohsilva

Sim o (ID_Turno) é o atributo que tá a fazer a ligação em comum.. 
Mas esse campo só é preenchido (Update) mais tarde por código na BD, eu primeiro com base nas horas que a aplicação regista de forma automática tenho de comparar com os intervalos da Tbl_Turnos para saber qual o ID_Turno a atribuir ao funcionário. O suposto é a aplicação automaticamente "detectar" qual é o turno em que o funcionário esteve a trabalhar. Mas estes testes são ainda manuais para poder explicar o problema que estava a encontrar.. Tenho de fazer o join e fica resolvido? Ou é preciso outra alternativa?

Edited by Moohsilva

"Qualquer um pode escrever um código que o computador entenda. Bons programadores escrevem códigos que os humanos entendam."

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.