What does `x` stand for in this query? select 
convert(varchar(10),  TotalSeconds / 3600) +':'+
convert(varchar(10),   TotalSeconds % 3600 / 60) +':'+ 
 convert(varchar(10),  TotalSeconds % 60) as Seconds
from
(select
  DateDiff
(second, date,outtime )
 as TotalSeconds 
    from attendance.attn_card_register) x -- this one
All tables used in a FROM clause must have a "correlation name" in standard SQL terms a.k.a "alias" in common vernacular SQL

When you use a table directly, the name is obvious. When you use an inline derived table it must be aliased whether it is actually referenced or not

You can use a CTE too. Here "MyCTE" is the name and doesn't required an alias

;WITH MyCTE AS
(
    select
      DateDiff (second, date,outtime)  as TotalSeconds 
    from
        attendance.attn_card_register)
)
Select 
   convert(varchar(10),  TotalSeconds / 3600) +':'+
   convert(varchar(10),   TotalSeconds % 3600 / 60) +':'+ 
   convert(varchar(10),  TotalSeconds % 60) as Seconds
from
   MyCTE;


Edit: not all RDBMS require it. SQL Server, MySQL, and Teradata do, Oracle doesn't.