То, как я могу разделить строку только на два, расстается с Perl?

SQL Server на самом деле хранит время как части дня. Например, 1 целый день = значение 1. 12 часов являются значением 0,5.

, Если бы Вы хотите сохранить временную стоимость, не используя тип ДАТЫ И ВРЕМЕНИ, храня время в десятичной форме, удовлетворил бы той потребности, также делая преобразование в ДАТУ И ВРЕМЯ простым.

, Например:

SELECT CAST(0.5 AS DATETIME)
--1900-01-01 12:00:00.000

Хранение значения, поскольку ДЕСЯТИЧНОЕ ЧИСЛО (9,9) использовало бы 5 байтов. Однако, если бы точность к не наибольшей важности, РЕАЛЬНОЕ использовало бы только 4 байта. В любом случае совокупное вычисление (т.е. среднее время) может быть легко вычислено на числовые значения, но не на типы Данных/Времени.

13
задан brian d foy 15 September 2009 в 15:37
поделиться

3 ответа

Чтобы получить это, вам необходимо используйте 3-й параметр для split () , который дает функции максимальное количество полей для разделения (если положительное):

my($first, $rest) = split(/\t/, $string, 2);
39
ответ дан 1 December 2019 в 17:48
поделиться

Нет. Он даст вам первые два предмета и выбросит остальные. Попробуйте следующее:

my ($k, $v) = split(/\t/, $string, 2);
7
ответ дан 1 December 2019 в 17:48
поделиться

Другой вариант - использовать простое регулярное выражение.

my($k,$v) = $str =~ /([^\t]+)\t(.+)/;
1
ответ дан 1 December 2019 в 17:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: