У меня есть функция, которая возвращает строку даты. Мне нужно это, потому что я не могу использовать переменную в представлении, но я могу использовать функцию, которая возвращает переменную, которую я установил раньше времени ...mysql function if/else
Итак, у меня все получилось, но потом я решил, что если бы я хотел, чтобы он возвращал текущую дату, если не была установлена переменная даты. Я думал, что этот код Уолд работы, но я получаю ошибки синтаксиса ...
DELIMITER $$
USE `cc`$$
DROP FUNCTION IF EXISTS `ox_date`$$
CREATE FUNCTION `ox_date`() RETURNS CHAR(50) CHARSET latin1
DECLARE ox VARCHAR(20)
IF @oxdate <1 THEN SET ox = CURDATE$$
ELSE SET ox = @oxdate$$
RETURN ox $$
DELIMITER ;
Я попытался ISNULL на том, что первый если, но это не было какой-либо помощи.
слегка изменен, но до сих пор не удается ... DELIMITER $$ USE 'cc' $$ DROP FUNCTION IF EXISTS' ox_date' $$ CREATE FUNCTION 'ox_date'() RETURNS CHAR (50) CHARSET latin1 DECLARE ox VARCHAR (20) $$ IF @oxdate <1 THEN SET ox = CURDATE() $$ ELSE SET ox = @ oxdate $$ END IF $$ RETURN ox $$ DELIMITER; ............ (0 строк (ы) пострадавших) Время Исполнение: 00: 00: 00: 000 Время передачи: 00: 00: 00: 000 Общее время: 00: 00: 00: 000 (0 строк (ы) пострадавших, 1 предупреждение (s)) Время Исполнение: 00: 00: 00: 000 Время трансфера: 00: 00: 01: 061 Общее время: 00: 00: 01: 061 Код Ошибка: 106 Вы ошибка в синтаксисе SQL; проверить – bbutle01