Ho problemi con un sistema che mio padre utilizza per segnalare alla sua azienda. Non l'ho costruito ma sto facendo del mio meglio per coprirmi la testa. È ASP e non ne sono molto esperto (o scrivo sql per quella materia).Problemi combinando 3 elementi di tabelle SQL diversi e ottenendo la somma
Fondamentalmente ho tre tabelle con cui sto lavorando, Item, ItemHistory e Devices. In tali tabelle quello che sto cercando di fare è
- ottenere gli elementi che un utente ha lavorato tramite la colonna "numero di serie" dalla tabella "elemento Cronologia"
- Confronti che il numero di serie per la colonna "numero di serie" nella tabella "Articolo" per ottenere il tipo di dispositivo (dalla colonna del dispositivo)
- Utilizzare il tipo di dispositivo per prelevare un valore di numero predeterminato dalla colonna "punti" nella tabella "Dispositivi"
- Memorizzare il valore e aggiungerlo a qualsiasi altro valore che è stato ritirato dalla query, quindi visualizza il totale.
* Vedere Aggiornamento *
Come si può vedere, sarebbe stato molto più facile se il tipo di dispositivo è stato incluso nella tabella ItemHistory, ma non lo era. Ho provato ad unire i tavoli, ma continuo a ricevere errori (che è dalla mia mancanza di conoscenza sono abbastanza certa). La query è per intervallo di date e utente (dalla tabella ItemHistory), ma penso di averlo capito. Non riesco proprio a far riferimento a tutti i tavoli e ad aggiungere i "punti" insieme.
Qualsiasi aiuto è molto apprezzato! Se hai bisogno di ulteriori informazioni fammi sapere. Grazie in anticipo.
Aggiornamento
Quindi, in pratica quello che sto avendo problemi con la società è che la query continua a tornare con "BOF o EOF è vero, o il record corrente è stato eliminato. Operazione richiesta richiede una corrente disco." che penso sia stato causato perché sta semplicemente aggiungendo i numeri nella colonna dei punti.
Penso che il problema con la mia ultima domanda è che ho fatto sembrare che ci fossero "Punti" per ogni dispositivo, ma in realtà ci sono un certo numero di dispositivi (diciamo cinque) e potrebbero esserci più numeri di serie tutti puntando su un dispositivo. Penso che questo sia il punto in cui la query si trova nei guai (ma potrei sbagliarmi). Inoltre, la mia istruzione sql sembra esattamente uguale a quella di un littlebobbytable pubblicato qui sotto, tranne che per le mie variabili aggiunte.
Ecco come appare il database.
Tabella ItemHistory
Date | SerialNumber | DeviceType | User ----------|--------------|-------------|------- 11/1/12 | 123-456-789 | NULL | Bill 11/1/12 | 456-123-987 | NULL | Bill 11/1/12 | 987-654-321 | NULL | Bill 11/1/12 | 216-897-631 | NULL | Bill 11/1/12 | 874-547-277 | NULL | Bill
SerialNumber | DeviceType -------------|------------- 123-456-789 | Device1 456-123-987 | Device2 987-654-321 | Device3 216-897-631 | Device1 874-547-277 | Device2
Devices Tabella articolo Tabella
Device | Points ----------|---------- Device1 | 20 Device2 | 25 Device3 | 40
E che spero l'uscita sarà è
User | Points --------|---------- Bill | 130
+1: La domanda in sé non è né nuova né innovativa su questo sito. MA hai fatto un bel po 'di sforzi fin dall'inizio per portare esempi chiari e una buona formattazione. Mantenere il buono stile. –