Semua alat
Percuma

Rujukan MySQL yang boleh dicari dan dicetak — pertanyaan, join, indeks, fungsi, jenis data dan perintah pentadbiran. Percuma.

Pertanyaan

10
SELECT * FROM users;
Pilih semua lajur dan baris
SELECT id, name FROM users;
Pilih lajur tertentu
SELECT DISTINCT city FROM users;
Nilai unik sahaja
WHERE age > 18 AND active = 1
Tapis baris mengikut syarat
WHERE name LIKE 'A%'
Padanan corak (% = sebarang aksara)
WHERE id IN (1, 2, 3)
Padan sebarang nilai dalam set
WHERE age BETWEEN 18 AND 30
Penapis julat inklusif
ORDER BY created_at DESC
Isih menurun
LIMIT 10 OFFSET 20
Halaman hasil
WHERE email IS NULL
Padan nilai null

Cantuman

8
INNER JOIN orders ON orders.user_id = users.id
Baris sepadan dalam kedua-dua jadual
LEFT JOIN orders ON ...
Semua baris kiri + padanan
RIGHT JOIN orders ON ...
Semua baris kanan + padanan
CROSS JOIN colors
Hasil darab Cartesan
SELF JOIN: FROM emp e JOIN emp m ON e.mgr = m.id
Cantum jadual dengan dirinya
USING (user_id)
Cantum pada lajur nama sama
UNION / UNION ALL
Gabungkan set hasil
SELECT u.*, o.total FROM users u JOIN orders o
Alias jadual untuk kejelasan

Pengagregatan

9
COUNT(*)
Kira baris
SUM(amount)
Jumlah lajur berangka
AVG(price)
Nilai purata
MIN(price), MAX(price)
Terkecil dan terbesar
GROUP BY country
Kumpulkan baris untuk pengagregatan
HAVING COUNT(*) > 5
Tapis pada kumpulan teragregat
GROUP_CONCAT(name)
Cantumkan nilai berkumpulan
COUNT(DISTINCT city)
Kira nilai unik
ROW_NUMBER() OVER (ORDER BY id)
Pemeringkatan fungsi window

Mengubah data

8
INSERT INTO users (name) VALUES ('Sam');
Sisip satu baris
INSERT INTO users (name) VALUES ('A'),('B');
Sisip beberapa baris
UPDATE users SET active = 1 WHERE id = 5;
Kemas kini baris sepadan
DELETE FROM users WHERE id = 5;
Padam baris sepadan
TRUNCATE TABLE logs;
Buang semua baris dengan pantas
INSERT ... ON DUPLICATE KEY UPDATE
Upsert pada kunci unik
REPLACE INTO users ...
Padam + sisip semasa konflik
INSERT IGNORE INTO ...
Langkau baris yang akan ralat

Skema / DDL

9
CREATE TABLE users (id INT PRIMARY KEY);
Cipta jadual baharu
AUTO_INCREMENT
Lajur auto-nombor
ALTER TABLE users ADD COLUMN age INT;
Tambah lajur
ALTER TABLE users DROP COLUMN age;
Buang lajur
ALTER TABLE users MODIFY name VARCHAR(100);
Tukar jenis lajur
DROP TABLE IF EXISTS users;
Padam jadual
FOREIGN KEY (user_id) REFERENCES users(id)
Rujuk jadual lain
ON DELETE CASCADE
Lata padam kepada anak
CREATE TABLE t2 LIKE t1;
Salin struktur jadual

Indeks & kunci

8
PRIMARY KEY (id)
Pengenal baris unik
UNIQUE (email)
Kuatkuasakan nilai unik
CREATE INDEX idx_name ON users (name);
Cepatkan carian pada lajur
CREATE INDEX idx_ab ON t (a, b);
Indeks komposit (pelbagai lajur)
DROP INDEX idx_name ON users;
Buang indeks
FULLTEXT (body)
Indeks carian teks penuh
EXPLAIN SELECT ...;
Tunjukkan pelan pertanyaan
SHOW INDEX FROM users;
Senaraikan indeks pada jadual

Jenis data

9
INT, BIGINT, TINYINT
Jenis integer mengikut saiz
DECIMAL(10, 2)
Nombor titik tetap tepat
VARCHAR(255)
String panjang berubah
TEXT, LONGTEXT
Blob teks besar
DATE, DATETIME, TIMESTAMP
Jenis tarikh dan masa
BOOLEAN (TINYINT(1))
True/false disimpan sebagai 0/1
JSON
Lajur dokumen JSON asli
ENUM('a', 'b')
Salah satu daripada set nilai tetap
UNSIGNED
Pengubah suai berangka bukan negatif

Type sizes & limits

20
TINYINT
1 byte: -128..127 (0..255 UNSIGNED)
SMALLINT
2 bytes: -32,768..32,767 (0..65,535)
MEDIUMINT
3 bytes: -8.39M..8.39M (0..16.78M)
INT
4 bytes: -2.15B..2.15B (0..4.29B)
BIGINT
8 bytes: ±9.22×10^18 (0..1.84×10^19)
DECIMAL(M, D)
Exact: M up to 65 digits, D up to 30
FLOAT / DOUBLE
4 / 8 bytes approximate floating point
CHAR(M)
Fixed length, 0..255 characters
VARCHAR(M)
0..65,535 bytes (shared 64KB row limit)
TINYTEXT
Up to 255 bytes (~255 chars)
TEXT
Up to 65,535 bytes (64 KB)
MEDIUMTEXT
Up to 16,777,215 bytes (16 MB)
LONGTEXT
Up to 4,294,967,295 bytes (4 GB)
BLOB types
TINY/—/MEDIUM/LONG: 255B..4GB (binary)
JSON
Stored as LONGBLOB, up to ~4 GB
ENUM / SET
ENUM: 65,535 members; SET: 64 members
DATE
1000-01-01 to 9999-12-31 (3 bytes)
DATETIME
1000 to 9999, microseconds (5–8 bytes)
TIMESTAMP
1970-01-01 to 2038-01-19 UTC (4 bytes)
TIME / YEAR
±838:59:59 / 1901..2155

Fungsi

9
NOW(), CURDATE()
Tarikh-masa / tarikh semasa
DATE_FORMAT(d, '%Y-%m-%d')
Format tarikh
DATEDIFF(a, b)
Hari antara dua tarikh
CONCAT(a, ' ', b)
Cantumkan string
COALESCE(a, b, 'n/a')
Nilai bukan-null pertama
IFNULL(x, 0)
Ganti null dengan lalai
CASE WHEN x > 0 THEN '+' ELSE '-' END
Ungkapan bersyarat
CAST(x AS CHAR)
Tukar jenis nilai
ROUND(x, 2)
Bundarkan kepada perpuluhan

Transaksi & pentadbiran

9
START TRANSACTION;
Mula transaksi
COMMIT;
Kekalkan transaksi
ROLLBACK;
Buat asal transaksi
SAVEPOINT sp1;
Tetapkan titik rollback
SHOW TABLES;
Senaraikan jadual dalam pangkalan data
DESCRIBE users;
Tunjukkan struktur jadual
SHOW PROCESSLIST;
Senaraikan sambungan berjalan
GRANT ALL ON db.* TO 'u'@'%';
Berikan keistimewaan pengguna
mysqldump -u root db > db.sql
Sandar pangkalan data (CLI)

Tiada entri sepadan dengan “:q”.


Perlukan bantuan?
Menemui masalah dengan alat ini? Beritahu pasukan kami.
Laporkan masalah

Tambah alat percuma ini ke laman web anda sendiri — salin dan tampal kod di bawah.