Field Hitungan Menggunakan SQL
Data
 yang disimpan dalam table database seringkali tidak tersedia dalam 
format yang sebenarnya dibutuhkan oleh aplikasi atau user. Sebagai 
contoh, mungkin data yang ingin ditampilkan dalam bentuk gabungan dari 
beberapa kolom/field, ataupun ingin ditampilkan dalam huruf besar 
sedangkan data yang diinput dalam tabel dalam huruf kecil. Bahkan terkadang dibutuhkan data berupa hasil hitungan dari beberapa kolom/field.
Field hitungan adalah
 sebuah field yang dihasilkan dari kombinasi field-field yang ada dalam 
tabel. Field hitungan tidak benar-benar ada dalam tabel database, hanya bersifat on-the fly dalam statement SELECT. Field yang dihasilkan tidak mempunyai nama, tetapi  dapat diberikan alternatif nama dengan pemberian alias.
Rangkaian Field
Rangkian
 field adalah field yang terbentuk dari gabungan beberapa field data 
tipe teks yang dirangkaian menjadi sebuah field. Operator yang digunakan
 untuk merangkai field adalah tanda + ataupun ||, tergantung DBMS yang digunakan.
Contoh penggunaan Rangkaian Field:
SELECT FirstName, LastName, FirstName + '  ' + LastName As NamaLengkap,
Address, City, Country, Address + ', ' + City + ',  ' + Country As Alamat_Lengkap
FROM Employees Order By FirstName
Field Kalkulasi Matematis
Field kalkulasi sering digunakan untuk melakukan perhitungan-perhitungan matematis pada data yang diambil.
Tabel 4.3 Operator Matematis SQL
Operator 
 | 
Keterangan 
 | 
+ 
 | 
Penjumlahan 
 | 
- 
 | 
Pengurangan 
 | 
* 
 | 
Perkalian 
 | 
/ 
 | 
Pembagian 
 | 
Contoh penggunaan field kalkulasi matematis:
SELECT  ProductId, UnitPrice, Quantity, UnitPrice * Quantity As Harga_Total FROM [Order Details] ORDER BY ProductId
Fungsi
Fungsi
 adalah operasi-operasi yang dapat dilakukan pada data untuk memudahkan 
perubahan dan manipulasi atau ekstraksi data. Fungsi cenderung sangat 
khusus untuk setiap DBMS. Pada dasarnya sedikit saja fungsi yang secara 
identik didukung oleh semua DBMS besar. Walaupun semua tipe 
fungsionalitas biasanya tersedia di setiap DBMS, nama fungsi atau 
sintaks dapat sangat berbeda.
Contoh  perbedaaan penggunaan fungsi ekstraksi bagian string pada DBMS yang berbeda :
Tabel 4.4 Perbedaan penggunaan fungsi ekstraksi string pada beberapa DBMS
Fungsi 
 | 
MS.Access 
 | 
V. Foxpro 
 | 
SQL Server 
 | 
Oracle 
 | 
Ekstraksi bagian string 
 | 
Mid( ) 
 | 
Substr( ) 
 | 
Substring( ) 
 | 
Substr( ) 
 | 
Tipe-tipe Fungsi
1.        Fungsi Teks
2.        Fungsi Tanggal dan Waktu
3.        Fungsi Numerik
4.        Fungsi Sistem
Fungsi Teks
Fungsi teks digunakan
 untuk memanipulasi atau mengekstrak string teks (pemotongan atau 
penambahan nilai, konversi huruf besar dan huruf kecil).
Tabel 4.5 Contoh Fungsi Teks
Fungsi Teks 
 | 
MS.Access 
 | 
V.Foxpro 
 | 
SQL Server 
 | 
Mengambil beberapa karakter dari kiri string teks 
 | 
Left( ) 
 | 
Left( ) 
 | 
Left( ) 
 | 
Mengambil beberapa karakter dari kanan string teks 
 | 
Right( ) 
 | 
Right( ) 
 | 
Right( ) 
 | 
Meng-ekstrak bagian dari string teks 
 | 
Mid( ) 
 | 
Substr( ) 
 | 
Substring( ) 
 | 
Menghitung panjang string teks 
 | 
Len() 
 | 
Len() 
 | 
Len( ) 
 | 
Menghapus spasi di sebelah kiri string teks 
 | 
Ltrim( ) 
 | 
Ltrim( ) 
 | 
Ltrim( ) 
 | 
Menghapus spasi di sebelah kanan string teks 
 | 
Rtrim( ) 
 | 
Rtrim( ) 
 | 
Rtrim( ) 
 | 
Mengubah format string ke huruf besar 
 | 
Ucase( ) 
 | 
Upper( ) 
 | 
Upper( ) 
 | 
Mengubah format string ke huruf kecil 
 | 
Lcase( ) 
 | 
Lower( ) 
 | 
Lower( ) 
 | 
Catatan : format parameter yang digunakan dalam setiap fungsi untuk masing-masing DBMS tidak selalu sama.
Contoh penggunaan fungsi teks :
1.      SELECT CompanyName, Length(CompanyName) as PanjangData, Left(CompanyName,4) As Kiri4, Right(CompanyName,4) As Kanan4,Mid(CompanyName,3,5) As Tengah35, Ucase(CompanyName) As HurufBesar, Lcase(CompanyName) As HurufKecil FROM Customers Order By CompanyName
2. SELECT
     Ltrim(‘    JURUSAN        ‘) As SpasiKiri, 
     Rtrim(‘    JURUSAN      ‘) As SpasiKanan, 
     Trim(‘    JURUSAN       ‘) As TanpaSpasi
     Lcase(JURUSAN) As HurufKecil
Fungsi Tanggal
Fungsi Tanggal digunakan
 untuk memanipulasi nilai tanggal dan waktu atau untuk mengekstrak 
komponen-komponen spesifik dari nilai-nilai tersebut.
Tabel 4.6 Contoh Fungsi Tanggal
Fungsi Tanggal 
 | 
MS.Access 
 | 
V.Foxpro 
 | 
SQL Server 
 | 
Mengambil Nilai Tanggal 
 | 
Day() 
 | 
Day() 
 | 
Day() 
 | 
Mengambil Nilai Bulan 
 | 
Month() 
 | 
Month() 
 | 
Month() 
 | 
Mengambil Nilai Tahun 
 | 
Year() 
 | 
Year() 
 | 
Year() 
 | 
Mengambil NilaiTanggal 
 | 
DatePart('d',x) 
 | 
DatePart(dd,x) 
 | |
Mengambil Nilai Bulan 
 | 
DatePart('m',x) 
 | 
DatePart(mm,x) 
 | |
Mengambil Nilai Tahun 
 | 
DatePart('yyyy',x) 
 | 
DatePart(yy,x) 
 | |
Menghitung Selisih Tanggal 
 | 
DateDiff('d',x,y) 
 | 
DateDiff(dd,x,y) 
 | |
Menghitung Selisih Tahun 
 | 
DateDiff('yyyy',x,y) 
 | 
DateDiff(yy,x,y ) 
 | |
Menambah Tahun 
 | 
DateAdd('yyyy',x,y) 
 | 
DateAdd(yy,x,y) 
 | |
Mengambil Waktu System (komputer) 
 | 
Now() 
 | 
Getdate() 
 | 
Catatan : Format parameter yang digunakan dalam setiap fungsi untuk masing-masing DBMS tidak selalu sama.
Contoh penggunaan Fungsi Tanggal:
1.    SELECT FirstName + ' ' + LastName As Nama, BirthDate,
     Day(BirthDate) As Tanggal,
     Month(BirthDate) As Bulan,
     Year(BirthDate) As Tahun 
     FROM Employees
2.    SELECT FirstName + ' ' + LastName As Nama, BirthDate,
     Datepart(dd,BirthDate) As Tanggal,
     Datepart(mm,BirthDate) As Bulan,
     Datepart(yy,BirthDate) As Tahun
     FROM Employees
3.    SELECT FirstName + ' ' + LastName As Nama, BirthDate FROM Employees
     WHERE Datepart(yy,BirthDate) Between 1960 And 1968
     ORDER BY BirthDate
Fungsi Numerik
Fungsi Numerik digunakan untuk melakukan operasi-operasi matematik pada data numerik. Fungsi
 Numerik hanya digunakan untuk manipulasi data numerik, cenderung 
digunakan untuk perhitungan aljabar, trigonometri, ataupun geometri. 
Fungsi numerik adalah fungsi yang paling seragam dan konsisten pada DBMS yang besar.
Tabel 4.7 Fungsi Manipulasi Numerik yang Umum Digunakan
Fungsi 
 | 
Keterangan 
 | 
ABS() 
 | 
Menghasilkan nilai mutlak sebuah bilangan 
 | 
COS() 
 | 
Menghasilkan cosin trigonometri dari sudut tertentu 
 | 
EXP() 
 | 
Menghasilkan nilai eksponen dari bilangan khusus 
 | 
PI() 
 | 
Menghasilkan nilai PI 
 | 
SIN() 
 | 
Menghasilkan sinus trigonometri dari sudut tertentu 
 | 
SQRT() 
 | 
Menghasilkan akar kuadrat bilangan tertentu 
 | 
ROUND() 
 | 
Menghasilkan pembulatan bilangan tertentu 
 | 
Catatan : Lihat dokumentsi DBMS masing-masing untuk daftar fungsi matematis yang didukung.
Contoh penggunaan Fungsi Numerik:
1.    SELECT Abs(-1) as NilaiMutlak, Sqrt(81) As NilaiAkar
2.    SELECT UnitPrice, Sqrt(UnitPrice) As NilaiAkar FROM Products
3.    SELECT  Round(Sqrt(UnitPrice),3) As Pembulatan3 FROM Products
Fungsi Sistem
Fungsi
 Sistem mengembalikan informasi-informasi khusus ke DBMS yang sedang 
digunakan, seperti siapa yang sedang meng-akses database, daftar nama 
user yang terdaftar dan lain-lain. Fungsi sistem sangat khusus untuk 
setiap DBMS.
Contoh penggunaan Fungsi Sistem:
SELECT User_Name(1), User_Name(2), User_Name(3), Current_User
Menyisipkan Data
Statement
 INSERT digunakan untuk menyisipkan (menambah)  baris ke suatu tabel 
database. Insert/menyisipkan data dapat dilakukan dengan penginputan 
perbaris data secara langsung atau data yang disisipkan dapat berasal 
dari bari-baris tabel lain (hasil dari query).
a.    Insert dan Input Satu Baris Data
Pola :
INSERT INTO TableName[(columns,…)]
VALUES (value1, value2,…)
Contoh :
Insert sebuah baris tunggal lengkap :
Penulisan tabel secara implisit :
INSERT INTO Pelanggan
             VALUES ('XYZZ',
                        'PT. Maju Mundur',
                        ‘Anty',
                        ‘Secretary',
                        'Jl. Pengayoman No. 20',
                        'Makassar',
                        'MKS',
                        '1234',
                        'Indonesia',
                        '(0411) 444123',
                        '(0411) 444321')
Penulisan tabel secara eksplisit :
INSERT INTO Pelanggan (CustomerId,
                           CompanyName,
                           ContactName,
                           ContactTitle,
                           Address,
                           City,
                           Region,
                           PostalCode,
                           Country,
                           Phone,
                           Fax)
   VALUES ('XYZZ',
               'PT. Maju Mundur',
               ‘Anty',
               ‘Secretary',
               'Jl. Pengayoman No. 20',
               'Makassar',
               'MKS',
               '1234',
               'Indonesia',
               '(0411) 444123',
               '(0411) 444321')
Insert sebuah baris tunggal sebagian:
INSERT INTO Pelanggan (CustomerId,
                           CompanyName,
                           Address,
                           City)
   VALUES ('XYZZ',
               'PT. Maju Mundur',
               ‘Anty',
               ‘Secretary',
               'Jl. Pengayoman No. 20',
               'Makassar')
b.      Insert Data Dari Tabel /Hasil Query
Pola:
INSERT INTO TableName
SELECT columns,…
FROM TableName
[WHERE]….
Contoh :
1.    INSERT INTO Pelanggan
SELECT * FROM Customers
WHERE Region Is Null
2.    INSERT  INTO Pelanggan  (CustomerId,
                                                   CompanyName,
                                                   Address)
SELECT  CustomerId,
                     CompanyName,
                     Address
FROM Customers
WHERE CompanyName Like ‘[ABC]*’
c.         Meng-copy /menyalindari tabel
Pola :
SELECT * Into DestinationTable
FROM SourceTable
Contoh :
Membuat Tabel Pelanggan dengan meng-copy Tabel Customers:
SELECT * INTO Pelanggan FROM Customers
Memperbaharui Struktur Tabel
Untuk
 memperbaharui defenisi tabel digunakan statemen ALTER TABLE. Namun 
demikian perubahan tabel yang sudah ada, bukanlah masalah sederhana. 
Pastikan merujuk dokumentasi DBMS untuk melihat bagaimana perubahan bisa
 dilakukan.
Pola :
ALTER TABLE
(
  ADD|DROP COLUMN |ALTER COLUMN column DataType [NULL|NOT NULL] [constraints],
     ADD|DROP COLUMN |ALTER COLUMN column DataType [NULL|NOT NULL] [constraints],
    ….
)
Contoh :
1.  ALTER TABLE Mahasiswa
     ADD Jurusan Char(15) NULL
2. ALTER TABLE Mahasiswa
     ALTER COLUMN Jurusan Char(20) NULL
3.  ALTER TABLE Mahasiswa
     DROP COLUMN Jurusan
0 komentar:
Terimakasi telah mengunjungi blog ini , semoga informasi yang terdapat dalam blog ini bermafaat bagi anda jika informasi yang kalian baca di blog ini bermanfaat silahkan di Share dan beri komentar :)
Perhatian !!!
Berkomentarlah yang baik dan sopan !
jika mengirim link aktif komentar anda akan di anggap spam !
berkomentarlah sesuai topik !