MySQL menggabungkan dua kolom menjadi satu kolom

I'm mencoba untuk menemukan cara untuk menggabungkan dua kolom menjadi satu, tapi tetap mendapatkan nilai '0' di kolom bukan untuk kombinasi kata-kata.

Ini adalah apa yang saya've mencoba serta lain:

SELECT column1 + column2 AS column3
FROM table;

SELECT column1 || column2 AS column3
FROM table;

SELECT column1 + ' ' + column2 AS column3
FROM table;

Bisa seseorang tolong beritahu saya tahu apa yang saya'm lakukan salah?

Mengomentari pertanyaan (5)
Larutan

Dugaan saya adalah bahwa anda menggunakan MySQL mana + operator melakukan itu, bersama dengan diam konversi dari nilai angka. Jika nilai tidak dimulai dengan digit, maka nilai yang dikonversi adalah 0.

Jadi cobalah ini:

select concat(column1, column2)

Dua cara untuk menambahkan spasi:

select concat(column1, ' ', column2)
select concat_ws(' ', column1, column2)
Komentar (4)

Mencoba ini, itu bekerja untuk saya

select (column1 || ' '|| column2) from table;
Komentar (3)

It's bekerja untuk saya

SELECT CONCAT(column1, ' ' ,column2) AS newColumn;
Komentar (0)

Ini adalah satu-satunya solusi yang akan bekerja untuk saya, ketika saya membutuhkan ruang di antara kolom yang digabungkan.

select concat(concat(column1,' '), column2)
Komentar (0)

Jika anda Bekerja Pada Oracle Maka:

SELECT column1 || column2 AS column3
FROM table;

ATAU

Jika Anda Bekerja Pada MySql Maka:

SELECT Concat(column1 ,column2) AS column3
FROM table;
Komentar (0)

Untuk MySQL penggemar di luar sana, aku suka IFNULL() fungsi. Jawaban yang lain di sini menunjukkan fungsi yang sama dengan ISNULL() fungsi dalam beberapa implementasi. Dalam situasi saya, saya memiliki kolom deskripsi yang TIDAK NULL, dan kolom nomor seri yang dapat menjadi NULL Ini adalah cara saya menggabungkan mereka ke dalam satu kolom:

SELECT CONCAT(description,IFNULL(' SN: ', serial_number),'')) FROM my_table;

Hasil saya menyarankan bahwa hasil dari menggabungkan string dengan NULL hasil NULL. Saya telah mendapatkan nilai alternatif dalam kasus tersebut.

Komentar (0)

Saya telah menggunakan cara ini dan yang terbaik selamanya. Dalam hal ini kode null juga ditangani

SELECT Title,
FirstName,
lastName, 
ISNULL(Title,'') + ' ' + ISNULL(FirstName,'') + ' ' + ISNULL(LastName,'') as FullName 
FROM Customer

Coba ini...

Komentar (0)
convert(varchar, column_name1) + (varchar, column_name)
Komentar (0)
SELECT Collumn1 + ' - ' + Collumn2 AS 'FullName' FROM TableName                              
Komentar (1)