Rất tiếc là không có chức năng nào cho hành vi của bạn, nhưng thật đơn giản để tạo chức năng của riêng bạn nếu bạn có quyền cho điều đó, cách khôn ngoan khác là bạn cũng có thể thêm IF THEN ELSE
cho truy vấn của bạn như bạn đã hiển thị nhưng đó sẽ không phải là câu trả lời cho câu hỏi của bạn. Nếu bạn muốn tạo một hàm thì bạn sẽ gặp vấn đề là bạn cần các kiểu tham số rõ ràng và với mysql, rất tiếc là nó cũng không hoạt động để nạp chồng một hàm (cùng tên hàm nhưng khác kiểu tham số). Vì vậy, bạn cần cho các loại chức năng khác nhau với các tên chức năng khác nhau. Nó sẽ trông như thế:
CREATE FUNCTION `fmap_varchar`(e1 VARCHAR(255), e2 VARCHAR(255) )
RETURNS VARCHAR(255) DETERMINISTIC
RETURN IF(e1 IS NULL, NULL, e2);
Bạn cũng có thể phải quan tâm đến bộ ký tự chính xác mà bạn cũng có thể chỉ định trong mệnh đề trả về.
Và giải pháp với một truy vấn bạn đã đưa ra:
SELECT IF(something IS NULL, NULL, anotherthing) FROM your_table;