Memilih konstanta tanpa merujuk ke tabel adalah sah secara hukum dalam pernyataan SQL:
SELECT 1, 2, 3
Hasil menetapkan bahwa yang terakhir mengembalikan adalah baris tunggal yang berisi nilai-nilai. Saya bertanya-tanya apakah ada cara untuk memilih beberapa baris sekaligus menggunakan ekspresi konstan, semacam:
SELECT ((1, 2, 3), (4, 5, 6), (7, 8, 9))
Saya ingin sesuatu seperti di atas yang berfungsi dan mengembalikan set hasil dengan 3 baris dan 3 kolom.
Jawaban:
sumber
AS
untuk memberikan alias pada pertamaSELECT
Classic Report
tabel dengan konten statis, jika selesai dengan nilaiFROM dual
setelahnyaSELECT
, dan sebelumUNION ALL
jika ada.Di
PostgreSQL
, Anda dapat melakukan:Di sistem lain, cukup gunakan
UNION ALL
:Di
Oracle
,SQL Server
danPostgreSQL
, Anda juga dapat menghasilkan set rekaman dari jumlah baris sewenang-wenang (dapat disediakan dengan variabel eksternal):di
Oracle
,di
SQL Server
,di
PostgreSQL
.sumber
SELECT 1
di Oracle (SELECT 1 FROM Dual
berhasil).VALUES
Perintah telanjang berikut berfungsi untuk saya di PostgreSQL:sumber
Coba hubungkan dengan klausa di oracle, sesuatu seperti ini
Untuk informasi lebih lanjut tentang terhubung dengan klausa, ikuti tautan ini: menghapus URL karena situs oraclebin sekarang berbahaya.
sumber
Untuk Microsoft SQL Server atau PostgreSQL Anda mungkin ingin mencoba sintaks ini
SELECT constants FROM (VALUES ('[email protected]'), ('[email protected]'), ('[email protected]')) AS MyTable(constants)
Anda juga dapat melihat SQL Fiddle di sini: http://www.sqlfiddle.com/#!17/9eecb/34703/0
sumber
Peramal. Berkat posting ini PL / SQL - Gunakan Variabel "Daftar" di Where In Clause
Saya mengumpulkan contoh pernyataan saya untuk dengan mudah memasukkan nilai secara manual (digunakan kembali dalam menguji suatu aplikasi oleh penguji):
sumber
sumber
Inilah cara saya mengisi data statis di Oracle 10+ menggunakan trik XML yang rapi.
Penggabungan hanya menyisipkan baris yang hilang di tabel asli, yang nyaman jika Anda ingin menjalankan kembali skrip sisipan Anda.
sumber
Opsi untuk DB2:
sumber
Di Oracle
sumber
Berikut ini cara melakukannya menggunakan fitur XML dari DB2
sumber
Cara ini dapat membantu Anda
Any_Table_In_Your_DataBase:
tabel apa pun yang berisi lebih dari 3 catatan, atau menggunakan tabel sistem apa pun. Di sini kami tidak memiliki perhatian dengan data dari tabel itu.Anda bisa membawa variasi dalam hasil yang ditetapkan dengan menggabungkan kolom dengan kolom Pertama, Kedua dan Ketiga dari
Any_Table_In_Your_DataBase
tabel.sumber
Di MySQL, Anda dapat melakukan:
values (1,2), (3, 4);
Dengan MySQL 8, Anda juga dapat memberikan nama kolom:
sumber
sesuatu seperti itu
sumber