База данных, которую я использую (WRDS), в основном использует веб-форму для запросов, поэтому по этой причине первичные ключи в базе данных сохраняются как VARCHAR (6), несмотря на то, что они являются целыми числами.
Мой запрос выглядит следующим образом - select gvkey from comp.sec_dprc where gvkey in (12142, 12141, 12138, 1300, 1722, 12635, 12850, 3144);
Поскольку этот запрос является просто строкой, переданной функции в python, я не могу контролировать тип данных список ключей, поэтому они читаются как цифры c. Это означает, что мой запрос не находит совпадений.
Я хотел бы иметь возможность указать тип данных varchar (6) из запроса, если это возможно. Я пытался;
cast((12142, 12141, 12138, 1300, 1722, 12635, 12850, 3144) as varchar(6)
и
(cast(12142 as varchar(6), cast(12141as varchar(6), cast(12138 as varchar(6), etc)
До сих пор у меня не было никакого успеха. У меня был еще меньший успех с поддержкой клиентов WRDS. Если есть какое-то решение, которого мне не хватает, я был бы абсолютно рад c найти его.
Cheers