Skip to main content

Menggabungkan 3 Kolom dan Menampilkan Umur Employee di SQL

Assalamu'alaikum Warahmatullahi Wabarakatuh

Salam jumpa dengan teman-teman semua, lama saya fakum di blog ini karena segudang kesibukan saya (alasan saja tuh). Pada postingan saya kali saya mau share tentang bagaimana menampilkan umur seseorang dari kolom BirthDate dan mencoba menggabungkan 3 buah kolom menjadi satu.

Kasus ini saya alami ketika ada seorang teman menanyakan bisa atau tidak dan jika bisa gimana sih caranya. Oke langsung saja saya disini menggunakan database SQL Northwind, saya ambil data dari tabel Employees, struktur tabelnya seperti berikut :

I . Kasus Pertama
Kasus pertama adalah menggabungkan 3 buah kolom yaitu TitleOfCourtesy, FirstName dan LastName. Berikut Query yang sudah saya buatkan :

SELECT Fullname=(((SELECT CONVERT(nvarchar, TitleOfCourtesy + ' ' + FirstName + ' ' + LastName)))) FROM Employees

Jadi dari ketiga kolom tersebut saya konvert dulu menjadi satu dengan nama kolom nantinya akan menjadi kolom Fullname, yang sebetulnya secara fisik kolom Fullname tidak ada. Mari kita execute query diatas, seharusnya keluarannya akan seperti berikut.

Akan berbeda ketika kita lakukan query dengan perintah berikut :

SELECT TitleOfCourtesy, Firstname, LastName FROM Employees

Maka hasilnya akan seperti berikut :

Oke, terlihat jelas bukan perbedaannya? Ya, pada gambar yang pertama ketika perintah di Execute 3 kolom menjadi satu, tapi pada gambar kedua 3 kolom tampil terpisah.

II. Kasus Kedua
Pada kasus kedua adalah bagaimana caranya mengetahui berapa usia karyawan masing-masing, sedangkan pada struktur tabelnya kita hanya diberikan data tanggal, bulan, tahun lahirnya karyawan dan tidak ada kolom usia karyawan. Jadi bagaimana ini? Oke mari kita buat Query nya...

SELECT FirstName, YEAR(CURRENT_TIMESTAMP)-YEAR(BirthDate)- CASE WHEN
(MONTH(BirthDate)*100+DAY(BirthDate))>(MONTH(CURRENT_TIMESTAMP)*100+DAY(CURRENT_TIMESTAMP))
THEN 1 ELSE 0 END AS Age
FROM Employees

Saya membuat Query diatas dengan mengambil 2 kolom dari tabel Employees, kolom apa itu? Ya, kolom FirstName dan BirthDate. Mari kita lihat Query tersebut ketika di Execute,

Mari saya jelaskan sedikit soal logika Query nya ya, jadi begini hlo ceritanya kita cari dulu hasil dari tahun sekarang-tahun lahir. Kalau udah ketemu hasilnya, hasil itu kita kurangi 1 (satu) jika (bulan lahir kali 100 ditambah tanggal lahir) lebih besar dari (bulan sekarang kali 100 ditambah tanggal hari ini). Jika tidak demikian maka hasil perhitungan tahun tersebut tidak perlu dikurangi 1. Udah dulu ya....capek ngetiknya, hehehe

Wassalamu'alaikum.....

Comments

Popular posts from this blog

Software Gratis Toko Online berbasis PHP

Assalamu'alaikum Warahmatullahi Wabarakatuh Temen-temen, kali ini saya mau share tentang programming lagi nih tapi sebetulnya ini sudah lama dibahas oleh blogger lainnya. Jadi disini saya hanya ingin membuat catatan kecil di blog saya supaya tidak kesulitan jika nanti ada butuh. Untuk temen-temen yang ingin belajar dan memiliki toko online sendiri mungkin bisa coba software ini. Software ini gratis dan mudah pemakaiannya. Memang software ini tidak selengkap joomla, ecommerce ataupun CMS lainnya. Namun menurut saya sudah cukup jika temen-temen ingin memiliki toko online sederhana. Nama software ini adalah shop-script dari webasyst . Shop-Script merupakan software shopping cart berbasis PHP dan bisa di download gratis dari sini . Cara menginstall dan mengkonfigurasinya pun sangat mudah. Claim yang didapat dari websitenya shop-script ini, setup awal bisa dilakukan tidak sampai 15 menit saja. Shop-script ini juga sudah mendukung payment menggunakan paypal. Beberapa fi...

Mensimulasikan Router Juniper Dengan GNS3 dan VirtualBox

Assalamu'alaikum Warahmatullahi Wabarakatuh Juniper Networks adalah salah satu dari perusahaan produsen router di dunia seperti Cisco, Mikrotik dan Alcatel. Juniper sendiri mempunyai produk yaitu switch, router dan perangkat security seperti firewall. Juniper biasanya digunakan dibagian core network. Karena juniper sudah terbukti dan terkenal kehandalannya dalam jaringan telekomunikasi. Sesuai dengan judul artikel ini, kali ini saya akan mencontohkan bagaimana supaya kita bisa mensimulasikan Juniper dengan bantuan GNS3 dan VirtualBox. Sebelum memulai, baiknya kita persiapkan terlebih dahulu semua tool yang dibutuhkan, berikut saya berikan link untuk download file-file yang perlu kalian persiapkan. Juniper JunOS Olive12.1R1.9 unduh disini . GNS3 unduh disini . VirtualBox unduh disini . Setelah semua sudah siap, dan tentunya GNS3 dan VirtualBox sudah terinstall di komputer kita ya, langkah selanjutnya bisa kita lihat di capture berikut. Buka VirtualBox, lalu masu...

Internet Indonesia Paling Lambat Se-Asia, Ini Kata Menkominfo

Didik Purwanto | Reza Wahyudi | Sabtu, 5 Mei 2012 | 08:02 WIB Ilustrasi JAKARTA, KOMPAS.com — Menteri Komunikasi dan Informatika Tifatul Sembiring angkat bicara soal hasil penelitian lembaga riset dari Amerika Serikat, Akamai, yang menyebut kecepatan internet di Indonesia dinilai paling lambat se-Asia. Menurutnya, penetapan kecepatan internet itu urusan operator, bukan pemerintah. "Saya terima tuduhan (hasil riset) itu. Tapi seharusnya itu urusan operator, kan mereka yang berjualan. Penetapan kecepatan internet itu bukan urusan pemerintah," kata Tifatul selepas melantik pengurus baru Badan Regulasi Telekomunikasi Indonesia (BRTI) di Gedung Kemenkominfo, Jakarta, Rabu (2/5/2012). Menurut Tifatul, meski bukan urusan pemerintah, Kemenkominfo tidak memiliki hak untuk memaksakan operator dalam menaikkan kecepatan internet di Tanah Air. Dengan demikian, hanya operator yang bisa menentukan kecepatan internet sekaligus tarifnya. Namun, Kemenkominfo berjanji untuk selal...