public function getFirstTableAlias($table=null)
    {
        if (!$table) {
            $table = static::getQuery()->get('table');
        }
        if ($table) {
            if (is_array($table)) {
                return static::getFirstTableAlias(current($table));
            }
            
            $table = preg_split('/(\,|(left|right)\s+join)/', $table)[0]; 
            $table = preg_split('/\s+(as\s+)?/', $table);
            $table = isset($table[1]) && $table[1] ? $table[1] : static::buildRealTableName($table[0], false); // 如果没有alias需要使用全名
            $table = trim($table);
        }
        
        return $table;
    }