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...

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...

Vb.Net 2008 Form Penjualan [REVISI]

Assalamu'alaikum Warahmatullahi Wabarakatuh Selamat pagi semua......! Bingung mau nulis apaan! hemb................setelah utak atik ternyata dapet ide juga buat nulis artikel tentang FOM PENJUALAN dengan VB.Net 2008, kali ini saya mau mencoba bikin form penjualan dengan database MySQL, sebelumnya teman-teman harus sudah membuat sebuah database di local seperti contoh berikut,  Saya membuatnya di XAMPP 1.7.3, itu optional saja sih,,,,teman-teman bisa membuatnya dengan aplikasi apa saja asalkan mendukung formatnya. Tabel diatas saya buat dengan database dbPenjualan, selain itu untuk tabel pendukung saya tambahkan satu tabel lagi sebagai berikut Tabel ini saya gunakan untuk menyimpan data setelah seluruh proses transaksi selesai. Jika semua sudah siap,,,,,,,,,kita tinggal setting sebuah form seperti berikut Saya tidak akan basa basi kelamaan, mending temen-temen langsung bedaan tampilan sebelum di Run sama yang sudah di Run, tampilan form jualnya pasti ada yang ber...