Forum
Merhaba arkadaşlar,
sql sorgumdaki süre bilgisini bugün ile toplayarak start time ve end time kolonlarını oluşturmak istiyorum, bu konuda bana yardımcı olabilirmisiniz,
resimde talebimi rahatlıkla anlayabilirsiniz,
resim görünmüyor ama aşağıdaki şekilde yapabilirsin.
DECLARE @begtime datetime,@endTime datetime
SELECT @begtime=GETDATE()
SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS --(Sorgunuz)
SELECT @endTime=GETDATE()
SELECT DATEDIFF(ms,@begtime,@endTime) AS Süre --Mikro Saniye Cinsinden
Merhaba Birol bey yapmak istediğim ile hiç alakası yok bu konunun. detaylı açıklama yaparsam konuyu anlatmış olacağımı düşünüyorum.
Tablomda üretimi yapılacak işlere ait satırlar var ve her satırın tamamlanması için hesaplanmış bir süre var.
Benim istediğim bugün (getdate())' e sürelerin ekelenerek yeni sütunlar oluşması,
Örneğin;
- iş 5 saat sürecek ise başlama zamanı 16.05.2018 15:30 Bitiş zamanı 5 saat sonrası 16.05.2018 18:30
- iş 4 saat sürecek ise başlama zamanı 16.05.2018 18:30 Bitiş zamanı 4 saat sonrası 16.05.2018 22:30
- ....
istediğim şey, başlama ve bitiş sütunlarını işlerin üretim süresine göre eklenerek oluşturulması,
biraz anladım sanırım resmi paylaşır mısınız ?
Biraz uzun olabilir umarım doğru anladım, trigger kullanman lazımki sonradan saatleri düzenlesin, excelldeki gibi kolay yolu yok bunun sqlde
Tabloyu şu şekilde tasarladım ==>
Ve triggerimiz ==>
Ardında insert yapmaya başlayalım trigger arkadan saatleri düzeltecektir
Tablonun son halide budur, her seferinde eklemen gerekecek yeniden makineleri update yapıldığında da düzeltebilen yapılırdı da vaktim yoktu aslında istenildiği gibi geliştirilebilir, bu arada toplu insert yapmamak lazım trigger patlar dedğim gibi detaylara dikkat etmedim
Beni aşan bir cevapla karşılaştım 🙂
Tek tek ele alıp anlamaya çalışacağım, takıldığım yer olursa sizinle paylaşacağım.
Yardımlarınız için teşekkür ederim Levent bey,