Database

PostgreSQL & MySQL Epochid

uuid alternatifi olarak bellekte daha az yer kaplayan çakışma yaşanması çok zor olan bir öneri;

select cast((extract(epoch from now())*1000) as bigint)

Fonksiyon haline getirip faydalanmak için;

CREATE OR REPLACE FUNCTION public.epochid(
	)
    RETURNS bigint
    LANGUAGE 'plpgsql'
    COST 100
    VOLATILE PARALLEL UNSAFE
AS $BODY$
declare 
    myresult bigint;
begin
    select cast((extract(epoch from now())*1000) as bigint) into myresult;
    return myresult;
end;
$BODY$;

ALTER FUNCTION public.epochid()
    OWNER TO postgres;

MySQL için;

SELECT (UNIX_TIMESTAMP() * 1000)

Mysql fonksiyon haline getirmek için;

CREATE FUNCTION `epochid`()
RETURNS bigint(20)
LANGUAGE SQL
DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
RETURN (UNIX_TIMESTAMP() * 1000);
END

Kullanımı;

select epochid()

//1663746796613