-- menggunakan select untuk menampilkan tabel
-- select * from member_loh_ya
select * from [Link] -- * = semua kolom
-- pilih semua kolom yang ada di [Link]
select order_id, postal_code, sales from `[Link]`
-- nama tabel diapit oleh backtick (bukan single quote/kutip)
select
order_id,
postal_code,
sales
from
`[Link]` -- pakai backtick atau gausah sekalian
-- memfilter data 'YANG MANA' yang akan kita gunakan
-- WHERE
-- ambil semua kolom dari tabel orders yang mana ship mode adalah
standard class
select * from `[Link]` where ship_mode = 'Standard Class' --
harus pakai kutip karena tipe datanya teks
-- operator '=' memfilter nilai yang EXACTLY sama/percis
select * from [Link] where quantity = 1 -- angka tidak perlu
pakai tanda kutip
-- backtick untuk nama tabel, kutip untuk teks
-- ambil transaksi (order) di tanggal 25 feb 2018 (2018-02-25)?
select * from `[Link]` where order_date = '2018-02-25'
-- format tanggal default YYYY-MM-DD (tahun-bulan-tanggal)
-- operator logika (AND, OR, NOT)
-- AND
-- syarat penerima bantuan sosial
-- KONDISI : (penghasilan < 300rb per bulan) DAN (memiliki tanggungan)
-- (KONDISI 1) AND (KONDISI 2)
-- CASE 1 : Mas Gatot siswa SD Ngawi Selatan bekal 2rb per hari, masih
punya orang tua -> berhak bansos?
-- Kondisi 1 terpenuhi (60rb < 300rb) DAN tidak memiliki
tanggungan
-- TRUE AND FALSE -> FALSE
-- CASE 2 : Mas Fuad, buruh pabrik dengan gaji UMR, masih jomblo ->
berhak?
-- KONDISI 1 (FALSE) DAN KONDISI 2 (FALSE) -> FALSE
-- CASE 3 : Pak Hambali pengusaha puding terkenal, punya keluarga
harmonis -> berhak?
-- KONDIS 1 (FALSE) DAN KONDISI 2 (TRUE) -> FALSE
-- CASE 4 : Kakek Andre, penjual daun singkong, 5rb per hari. tinggal
bersama istrinya dan cucunya Rusdi -> berhak?
-- KONDISI 1 (TRUE) DAN KONDISI 2 (TRUE) - > TRUE
-- kesimpulan: DAN akan bernilai BENAR jika semua kondisi yang
disyaratkan memenuhi
-- KONDISI 1 DAN KONDISI 2 DAN KONDISI 3
select
*
from
`[Link]`
where
(ship_mode = 'Standard Class') and (category = 'Office Supplies')
-- OR (ATAU)
-- Tolong belikan Finto ATAU Krakatau
-- warung 1: finto ada (true), krakatau ada (true) -> beli/ngga? beli (true)
-- warung 2: finto ngga ada(false), krakatau ada (true) -> beli/ngga? beli
(true)
-- warung 3: finto ada (ada), krakatau ngga ada (false) -> beli/ngga? beli
(true)
-- watung 4: finto tidak ada, krakatau tidak ada -> beli/ngga? tidak (false)
-- OR kesimpulan? setidaknya ada kondisi yang terpenuhi maka nilainya
akan benar
-- DAN dan ATAU sering ketuker/membingungkan di dunia nyata
-- siswa kelas 1 DAN kelas 2 kumpul di lapangan -> ngga ada yang
kumpul. bener ga?
-- ada ga siswa yang merupakan kelas 1 dan kelas 2 secara bersamaan?
select * from `[Link]`
-- tolong ambilkan data transaksi dari kota Leominster dan Andover
select * from `[Link]` where city = 'Leominster' and city =
'Andover'
select * from `[Link]` where city = 'Leominster' or city =
'Andover'
-- NOT, bukan, negasi, kebalikan
-- transaksi di kota selain leominster
select * from `[Link]` where (city = 'Leominster') -- Leominster
saja
select * from `[Link]` where NOT (city = 'Leominster') -- selain
Leominster
-- transaksi di kota leominster, tapi segmentnya selain Consumer
select * from `[Link]` where (city = 'Leominster') AND (NOT
segment = 'Consumer')
select * from `[Link]` where city = 'Leominster' or city =
'Andover' or city = 'Lawrence'
-- ambil semua data transaksi dari orders yang mana kota nya ADA DI
DALAM <daftar kota>
-- IN (alternatif untuk or berantai)
select * from `[Link]` where city IN
('Leominster','Andover','Lawrence')
-- recap: AND, OR, NOT
-- operator perbandingan (=, !=, <, <=, >, >=)
-- tampilkan semua transaksi yang 'rugi'
select * from `[Link]` where profit < 0
select * from `[Link]` where profit <= 0 -- (transaksi yang
profit 0 masuk ke dalam data)
-- memfilter tanggal
-- transaksi yang terjadi setelah tanggal 1 jan 2018 (1 jan masuk)
select * from `[Link]` where order_date >= '2018-01-01' --ISO
-- transaksi yang terjadi selama tahun 2018 adalah transaksi yang terjadi
mulai dari tanggal 1 jan sd 31 des
-- transaksi yang terjadi di 2018 adalah transaksi yang terjadi diantara 1
jan sd 31 des
-- transaksi tersebut terjadi setelah 1 jan DAN sebelum 31 des
-- order_date >= '2018-01-01' AND order_date <= '2018-12-31' (diantara
kedua tanggal)