Di SQL Server, Anda dapat menggunakan T-SQL SPACE()
berfungsi untuk menghasilkan sejumlah ruang tertentu.
Ini berguna untuk menambahkan spasi dalam string, misalnya, saat menggabungkan dua string atau lebih.
Cara kerjanya adalah, Anda memberikan jumlah spasi yang Anda butuhkan, dan itu akan mengembalikan string dengan jumlah spasi yang persis sama.
Sintaks
Sintaksnya seperti ini:
SPACE ( integer_expression )
Dimana integer_expression adalah bilangan bulat positif yang menunjukkan jumlah spasi. Jika ini adalah nilai negatif, NULL
dikembalikan.
Contoh 1 – Penggunaan Dasar
Berikut ini contoh cara kerjanya:
SELECT SPACE(40) AS Result;
Hasil:
+------------------------------------------+ | Result | |------------------------------------------| | | +------------------------------------------+
Jika tidak jelas, itu menghasilkan 40 spasi.
Contoh 2 – Penggabungan dengan Spasi
Contoh ini mungkin menunjukkan efeknya sedikit lebih baik.
SELECT 'Keep' + SPACE(10) + 'away!' AS Result;
Hasil:
+---------------------+ | Result | |---------------------| | Keep away! | +---------------------+
Contoh 3 – Nilai Bilangan Bulat Negatif
Argumen harus bernilai positif. Jika nilainya negatif, hasilnya adalah NULL
:
SELECT SPACE(-10) AS Result;
Hasil:
+----------+ | Result | |----------| | NULL | +----------+
Contoh 4 – Contoh Basis Data
Berikut adalah contoh sederhana menggunakan SPACE()
untuk menyisipkan spasi di antara dua kolom database saat dikembalikan dari database:
USE Music; SELECT TOP(7) ArtistName + SPACE(5) + AlbumName AS 'Artist and Album' FROM Artists ar INNER JOIN Albums al ON ar.ArtistId = al.ArtistId INNER JOIN Genres g ON al.GenreId = g.GenreId WHERE g.Genre = 'Rock';
Hasil:
+-------------------------------------------+ | Artist and Album | |-------------------------------------------| | Iron Maiden Powerslave | | AC/DC Powerage | | Devin Townsend Ziltoid the Omniscient | | Devin Townsend Casualties of Cool | | Devin Townsend Epicloud | | Iron Maiden Somewhere in Time | | Iron Maiden Piece of Mind | +-------------------------------------------+
Bagaimana dengan 1 atau 2 Spasi?
Ini adalah fungsi yang bagus untuk menambahkan banyak spasi, tetapi juga dapat meningkatkan keterbacaan kode saat menyertakan sejumlah kecil spasi – terutama jika kode berisi banyak contoh penambahan spasi.
Saat menggunakan SPACE()
Anda dapat melihat berapa banyak spasi dalam sekejap, tanpa harus menghitungnya.
Misalnya, lihat apakah Anda dapat memberi tahu berapa banyak spasi berikut ini:
SELECT 'Keep' + ' ' + 'away!';
Reaksi pertama Anda mungkin berupa tebakan cepat (misalnya, “2 atau 3”), sebelum melihat lebih dekat untuk memeriksanya. Untuk memastikan 100%, Anda mungkin harus mengarahkan kursor ke spasi untuk menghitung jumlah spasi.
Sekarang lihat kode berikut:
SELECT 'Keep' + SPACE(2) + 'away!';
Tidak perlu menebak. Anda dapat melihat 2
ditulis langsung ke dalam kode.
Karena itu, nilainya bisa berada di dalam variabel, sehingga kode Anda mungkin terlihat lebih seperti ini:
SELECT 'Keep' + SPACE(@space_size) + 'away!';
Yang jelas, tidak memberikan petunjuk tentang berapa banyak ruang yang ada (tanpa harus mencarinya). Namun, jika Anda sudah mengetahui nilai @space_size
Anda siap berangkat.
Contoh 5 – Ukuran Ruang Variabel
Berikut adalah contoh yang menunjukkan poin sebelumnya.
Di sini, jumlah spasi didefinisikan dalam variabel. Dalam hal ini, mudah untuk melihat nilai variabel, seperti yang didefinisikan di baris tepat sebelum SPACE()
fungsi (jelas, ini tidak selalu terjadi):
DECLARE @space_size int SET @space_size = 2 SELECT 'Keep' + SPACE(@space_size) + 'away!' AS Result GO
Hasil:
+-------------+ | Result | |-------------| | Keep away! | +-------------+
Unicode atau Lebih dari 8000 Spasi?
Microsoft menyatakan bahwa, untuk memasukkan spasi dalam data Unicode, atau untuk mengembalikan lebih dari 8000 spasi karakter, Anda harus menggunakan REPLICATE
bukannya SPACE
.