Visualizzazione dei risultati da 1 a 10 su 10

Discussione: [sql server 2008 r2]

  1. #1

    [sql server 2008 r2]

    Ciao a tutti,

    avrei un problemino da risolvere, immagino con un cursore, per il quale non conosco per� il funzionamento ...

    Ho due 2 tabelle:

    dipendenti_turni (azienda,matricola,inizio,fine,turnazione,posizion e) dove viene registrato il lavoratore e la turnazione assegnata e la posizione di partenza

    turnazioni_cicli (azienda,turnazione,posizione,orario) dove si ricavano gli orari per ogni posizione

    Dovrei estrarre i record per matricola che evidenzino gli orari corrispondenti per le date future partendo da oggi

    azienda,matricola,turnazione,04/08/2017,posizione,orario
    azienda,matricola,turnazione,05/08/2017,posizione,orario
    azienda,matricola,turnazione,06/08/2017,posizione,orario
    azienda,matricola,turnazione,07/08/2017,posizione,orario
    azienda,matricola,turnazione,08/08/2017,posizione,orario
    ...

    Grazie.
    IncorrectSyntax

  2. #2
    credo che basti una JOIN

  3. #3
    Quote Originariamente inviata da optime Visualizza il messaggio
    credo che basti una JOIN
    mi sfugge qualcosa ... come potrei farlo solo con una join?
    IncorrectSyntax

  4. #4
    azienda,turnazione,posizione sono in comune. ma forse se fai un esempio reale si capisce meglio cosa vuoi

  5. #5
    azienda,turnazione e posizione sono si in comune ma sulla base del ciclo non so in che posizione sarà il cilo per quel dipendente specifico per il quale è stata assegnata una certa posizione di partenza ad una certa data.

    LA TABELLA DIPEN_TURNAZIONI CONTIENE:


    AZIENDA MATRICOLA TURNAZIONE DATA PARTENZA POSIZIONE
    0000100 00001 AA1 01/08/2017 2


    LA TABELLA TURNAZIONI_CICLI


    AZIENDA TURNAZIONE NR_POSIZIONI_CICLO
    0000100 AA1 14


    Devo produrre una tabella che contenga le date presenti nella settimana successiva a quella di oggi specificando per ogni matricola e data la turnazione e la posizione teorica


    es


    data azienda matricola turnazione posizione
    07/08/2017 0000100 00001 AA1 8
    08/08/2017 0000100 00001 AA1 9
    ...


    Spero di essere stato più chiaro.


    Ciao.
    IncorrectSyntax

  6. #6
    non mi è chiara la storia dei cicli

  7. #7
    Quote Originariamente inviata da optime Visualizza il messaggio
    non mi è chiara la storia dei cicli
    una turnazione (ciclo) è una sequenza di giornate lavoro e di riposo che si chiude dopo n posizioni e che ricomincia poi dalla posizione 1
    IncorrectSyntax

  8. #8
    posta un po' più di dati, con 2 righe non riesco a immaginarmi il film

  9. #9
    Quote Originariamente inviata da optime Visualizza il messaggio
    posta un po' pi� di dati, con 2 righe non riesco a immaginarmi il film
    con questa query recupero: 1 le turnazioni agganciate ai dipendenti 2 data e posizione di partenza del ciclo:
    codice:
    select azienda,matricola,inizio,fine,turnazione,posizione from dipen_turnazioni where azienda ='000000A153' and    (convert    (date,inizio) <= convert (date,getdate())) and    (convert    (date,fine is null or    convert (date,fine) >= convert (date,getdate()))
    azienda matricola inizio fine turn posizione
    000000A153 140844 2015-06-01 NULL S004 15
    000000A153 140845 2016-02-01 NULL S010 17
    000000A153 140846 2015-06-01 NULL S004 8
    000000A153 140847 2016-02-08 NULL S004 1
    000000A153 140848 2016-01-01 NULL S004 33
    000000A153 140849 2017-02-01 NULL S011 10
    000000A153 140850 2015-06-01 NULL S004 1
    000000A153 140851 2016-12-01 NULL S008 11
    000000A153 140852 2015-06-01 NULL S004 29
    000000A153 140853 2015-06-01 NULL S004 15
    000000A153 140854 2015-06-01 NULL S004 15
    000000A153 140856 2016-04-01 NULL S004 33
    000000A153 140857 2015-06-01 NULL S004 22
    000000A153 140860 2015-07-01 NULL S008 10
    000000A153 140862 2016-03-01 NULL S004 30
    000000A153 140863 2016-02-01 NULL S010 24
    000000A153 140869 2016-07-01 NULL S004 19
    000000A153 140870 2016-06-01 NULL GG3 24
    000000A153 140871 2015-06-01 NULL S004 22
    000000A153 140872 2015-07-01 NULL S004 3
    000000A153 140873 2017-04-01 NULL S010 6
    000000A153 140874 2015-09-21 NULL A5 1
    000000A153 140875 2016-02-01 NULL A5 1
    000000A153 140876 2015-07-01 NULL S008 3
    000000A153 140881 2016-02-01 NULL S004 22
    000000A153 140882 2016-02-01 NULL S004 15
    000000A153 140883 2015-07-01 NULL S004 31
    000000A153 140884 2015-07-01 NULL S004 10
    000000A153 140886 2017-02-01 NULL S010 31
    IncorrectSyntax

  10. #10
    Quote Originariamente inviata da IncorrectSintax Visualizza il messaggio
    con questa query recupero: 1 le turnazioni agganciate ai dipendenti 2 data e posizione di partenza del ciclo:
    codice:
    select azienda,matricola,inizio,fine,turnazione,posizione from dipen_turnazioni where azienda ='000000A153' and    (convert    (date,inizio) <= convert (date,getdate())) and    (convert    (date,fine is null or    convert (date,fine) >= convert (date,getdate()))
    azienda matricola inizio fine turn posizione
    000000A153 140844 2015-06-01 NULL S004 15
    000000A153 140845 2016-02-01 NULL S010 17
    000000A153 140846 2015-06-01 NULL S004 8
    000000A153 140847 2016-02-08 NULL S004 1
    000000A153 140848 2016-01-01 NULL S004 33
    000000A153 140849 2017-02-01 NULL S011 10
    000000A153 140850 2015-06-01 NULL S004 1
    000000A153 140851 2016-12-01 NULL S008 11
    000000A153 140852 2015-06-01 NULL S004 29
    000000A153 140853 2015-06-01 NULL S004 15
    000000A153 140854 2015-06-01 NULL S004 15
    000000A153 140856 2016-04-01 NULL S004 33
    000000A153 140857 2015-06-01 NULL S004 22
    000000A153 140860 2015-07-01 NULL S008 10
    000000A153 140862 2016-03-01 NULL S004 30
    000000A153 140863 2016-02-01 NULL S010 24
    000000A153 140869 2016-07-01 NULL S004 19
    000000A153 140870 2016-06-01 NULL GG3 24
    000000A153 140871 2015-06-01 NULL S004 22
    000000A153 140872 2015-07-01 NULL S004 3
    000000A153 140873 2017-04-01 NULL S010 6
    000000A153 140874 2015-09-21 NULL A5 1
    000000A153 140875 2016-02-01 NULL A5 1
    000000A153 140876 2015-07-01 NULL S008 3
    000000A153 140881 2016-02-01 NULL S004 22
    000000A153 140882 2016-02-01 NULL S004 15
    000000A153 140883 2015-07-01 NULL S004 31
    000000A153 140884 2015-07-01 NULL S004 10
    000000A153 140886 2017-02-01 NULL S010 31
    con questa query recupero il codice turnazione la descrizione e il numero di posizioni della turnazione dettagli della turnazione
    codice:
    select azienda,turnazione,descrizione,giorni from turnazioni

    azienda turnazione giorni
    000000A153 A5 7
    000000A153 GG3 35
    000000A153 S004 35
    000000A153 S005 28
    000000A153 S006 28
    000000A153 S007 21
    000000A153 S008 35
    000000A153 S010 35
    000000A153 S011 35
    IncorrectSyntax

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.