Функцията "Умножение" в MySQL
синтаксис
Не можете просто да напишете две числа в MySQL, за да получите продукта. Трябва да въведете проблема в заявката SELECT MySQL. Например, напишете "SELECT 4 * 5;" в инструмента за заявки и MySQL ще върне "20" като продукт. Напишете "SELECT column1 * column2 FROM tablename;" да се използват стойности от таблица. Можете също да умножавате числата по колони. Напишете "SELECT 4 * 5 AS" продукт ";" да поставите етикет в колоната, която показва резултата.
Типове данни
MySQL автоматично преобразува стойности от различни типове, когато можете да извършите умножение. Ако умножите цяло число с номер с плаваща запетая, като например 15 по 3.0, MySQL връща числото с плаваща точка, което в този случай е 45.0. Ако умножите цяло число по дадена дата, MySQL връща цялото число. Например, три пъти "2011-07-15" връща 60, 332, 145. MySQL не интерпретира скриптове за дата като знаци минус. Въпреки това, MySQL не може да конвертира всички видове данни. Ако се опитате да използвате низ или знак в умножението си, MySQL ще върне нула.
лимит
Когато използвате числа в своите умножения, MySQL автоматично открива размера на номера, независимо дали има знак или не, и след това извършва изчислението. Най-големият целочислен тип обаче е "bigint", който позволява стойности със знак от -9, 223, 372, 036.854, 775, 808 до 9, 223, 372, 036.854, 775.807 или не подписани стойности от нула до 18, 446, 744, 073, 709, 551, 615, Ако се опитате да умножите стойност, по-голяма от тези числа, или ако резултатът от умножаването е по-голям, MySQL връща нула, защото не може да управлява такива големи стойности.
съображения
Можете да умножите цяла колона само с една стойност или дори с друга колона, но ако колоната има хиляди записи, MySQL може да отнеме известно време, за да върне резултата от умножението. За да намалите потенциалното време за изчакване, използвайте клаузата "WHERE", когато е възможно, за да определите кои колони искате да използвате при умножаване или използвайте клаузата "LIMIT", за да върнете максимален брой редове едновременно.