Last active
December 20, 2015 12:09
-
-
Save hidayat365/6128431 to your computer and use it in GitHub Desktop.
Contoh SQL untuk perhitungan menggunakan CASE clause
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| mysql> ---------------------------- | |
| mysql> -- set database | |
| mysql> ---------------------------- | |
| mysql> use test; | |
| Database changed | |
| mysql> ---------------------------- | |
| mysql> -- create table | |
| mysql> ---------------------------- | |
| mysql> create table penggunaan ( | |
| -> kegiatan varchar(20), | |
| -> senin varchar(10), | |
| -> selasa varchar(10), | |
| -> rabu varchar(10), | |
| -> kamis varchar(10), | |
| -> jumat varchar(10), | |
| -> sabtu varchar(10) | |
| -> ) ; | |
| Query OK, 0 rows affected (0.09 sec) | |
| mysql> ---------------------------- | |
| mysql> -- insert data | |
| mysql> ---------------------------- | |
| mysql> insert into penggunaan values | |
| -> ('olahraga','ya','tidak','ya','tidak','ya','tidak','tidak'), | |
| -> ('diskusi','tidak','ya','tidak','tidak','tidak','ya','tidak'), | |
| -> ('rapat','ya','tidak','tidak','tidak','tidak','tidak','tidak'), | |
| -> ('ulangan','tidak','ya','ya','ya','tidak','tidak','tidak') ; | |
| Query OK, 4 rows affected (0.04 sec) | |
| Records: 4 Duplicates: 0 Warnings: 0 | |
| mysql> ---------------------------- | |
| mysql> -- lihat isi table | |
| mysql> ---------------------------- | |
| mysql> select * from penggunaan; | |
| +----------+-------+--------+-------+-------+-------+-------+--------+ | |
| | kegiatan | senin | selasa | rabu | kamis | jumat | sabtu | minggu | | |
| +----------+-------+--------+-------+-------+-------+-------+--------+ | |
| | olahraga | ya | tidak | ya | tidak | ya | tidak | tidak | | |
| | diskusi | tidak | ya | tidak | tidak | tidak | ya | tidak | | |
| | rapat | ya | tidak | tidak | tidak | tidak | tidak | tidak | | |
| | ulangan | tidak | ya | ya | ya | tidak | tidak | tidak | | |
| +----------+-------+--------+-------+-------+-------+-------+--------+ | |
| 4 rows in set (0.00 sec) | |
| mysql> ---------------------------- | |
| mysql> -- buat perhitungannya | |
| mysql> ---------------------------- | |
| mysql> select penggunaan.* | |
| -> , case when senin='ya' then 1 else 0 end | |
| -> + case when selasa='ya' then 1 else 0 end | |
| -> + case when rabu='ya' then 1 else 0 end | |
| -> + case when kamis='ya' then 1 else 0 end | |
| -> + case when jumat='ya' then 1 else 0 end | |
| -> + case when sabtu='ya' then 1 else 0 end | |
| -> + case when minggu='ya' then 1 else 0 end as digunakan | |
| -> , case when senin='tidak' then 1 else 0 end | |
| -> + case when selasa='tidak' then 1 else 0 end | |
| -> + case when rabu='tidak' then 1 else 0 end | |
| -> + case when kamis='tidak' then 1 else 0 end | |
| -> + case when jumat='tidak' then 1 else 0 end | |
| -> + case when sabtu='tidak' then 1 else 0 end | |
| -> + case when minggu='tidak' then 1 else 0 end as tidak_digunakan | |
| -> from penggunaan ; | |
| +----------+-------+--------+-------+-------+-------+-------+--------+-----------+-----------------+ | |
| | kegiatan | senin | selasa | rabu | kamis | jumat | sabtu | minggu | digunakan | tidak_digunakan | | |
| +----------+-------+--------+-------+-------+-------+-------+--------+-----------+-----------------+ | |
| | olahraga | ya | tidak | ya | tidak | ya | tidak | tidak | 3 | 4 | | |
| | diskusi | tidak | ya | tidak | tidak | tidak | ya | tidak | 2 | 5 | | |
| | rapat | ya | tidak | tidak | tidak | tidak | tidak | tidak | 1 | 6 | | |
| | ulangan | tidak | ya | ya | ya | tidak | tidak | tidak | 3 | 4 | | |
| +----------+-------+--------+-------+-------+-------+-------+--------+-----------+-----------------+ | |
| 4 rows in set (0.00 sec) | |
| mysql> ---------------------------- | |
| mysql> -- YAY!!!! data matang, | |
| mysql> -- di php cukup select dan tampilkan saja | |
| mysql> ---------------------------- | |
| mysql> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment