Commit graph

299 commits

Author SHA1 Message Date
bar@bar.mysql.r18.ru
a057f75bc1 Fixed that this sequence didn't produce an error as it should have:
CREATE TABLE t1 (s1 CHAR(5) COLLATE latin1_german1_ci,
                 s2 CHAR(5) COLLATE latin1_swedish_ci);
SELECT * FROM t1 WHERE s1 = s2;
2003-07-29 17:39:39 +05:00
bell@sanja.is.com.ua
ec74bb8d76 independent ALL/ANY subselect on top of WHERE clause (subselect without GROUP BY or aggregate functions) optimisation
(SCRUM) (WL#1086)
2003-07-24 15:26:21 +03:00
bell@sanja.is.com.ua
af41a59af7 merge 2003-07-22 11:18:51 +03:00
Sinisa@sinisa.nasamreza.org
40756106a9 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2003-07-18 14:14:20 +03:00
bar@bar.mysql.r18.ru
46813d545d All functions now use the same function to aggregate comparison
and result types
2003-07-18 15:50:40 +05:00
bar@bar.mysql.r18.ru
e6cd54379e IN now aggregates all argument types for comparison 2003-07-18 14:03:54 +05:00
bar@bar.mysql.r18.ru
c8ecb45223 CASE optimization 2003-07-18 13:11:47 +05:00
bar@bar.mysql.r18.ru
ccece982fb Some fixes in CASE.
Test suit was extended to conver various arguments mixes.
2003-07-18 12:42:35 +05:00
bar@bar.mysql.r18.ru
a2f7ef9c8b CASE now aggregates all argument types instead of using the only one argument 2003-07-17 22:58:05 +05:00
bar@bar.mysql.r18.ru
8c06421c12 CASE stores first_expr and else_expr in args[] array now.
This allowed to reuse a lot of code.
2003-07-17 16:07:56 +05:00
bell@sanja.is.com.ua
a6b1a6fe3a merge 2003-07-16 13:58:11 +03:00
bar@bar.mysql.r18.ru
a35fff5bc3 Item_func_null doesn't have a separate Item for the first argument anymore.
args[0] is used instead. This allowed to resuse a lot of code.
2003-07-16 11:29:16 +05:00
bar@bar.mysql.r18.ru
e26b90c238 COALESCE now aggregates its argument types in this way:
if some of the arguments is STRING_RESULT the STRING_RESULT
else if some of the arguments is REAL_RESULT then REAL_RESULT
else INT_RESULT
2003-07-14 19:28:36 +05:00
ram@mysql.r18.ru
8e23f54fec backport fix for the bug #803: INTERVAL(NULL, ....) 2003-07-14 12:39:10 +05:00
ram@mysql.r18.ru
82942ebf9d Fix for the bug #803.
Now INTERVAL(NULL, N1, N2, ...) returns NULL.
2003-07-10 15:27:02 +05:00
Sinisa@sinisa.nasamreza.org
3e34c417aa Fix for a bug #807 2003-07-09 15:52:51 +03:00
bell@sanja.is.com.ua
7ad5331768 merge 2003-07-07 10:30:52 +03:00
bar@bar.mysql.r18.ru
d209cf70f8 More code was reused 2003-07-04 20:19:07 +05:00
bar@bar.mysql.r18.ru
07f94cb7cd Row comparison now does compare field collations, e.g.
ROW('a','b','c) = ROW('A' collate latin1_bin,'b','c') returns 0
When a number is compared to a string, character sets and 
collations are not aggregated. e.g. this returned error in 4.1.0:

SELECT 1=_latin2'1';
because character sets was aggregated, and 1 was considered as
a string of latin1 charset during this aggregation.
2003-07-03 17:00:01 +05:00
bell@sanja.is.com.ua
73fdf52fa2 merged 2003-07-03 11:59:57 +03:00
serg@serg.mylan
dcd13cf264 bug #504: in "datetime op int" comparison int wasn't converted to datetime 2003-07-02 17:12:50 +02:00
bar@bar.mysql.r18.ru
74b74ad5e7 There is no Item->binary() anymore. It was remain from 4.0. 2003-07-02 18:34:43 +05:00
bell@sanja.is.com.ua
2ae8a00b2a Item tree iterator
fixed dependence of items from reduced subquery
(SCRUM)
2003-07-02 13:12:18 +03:00
bell@sanja.is.com.ua
5eaaf8e732 after review changes (SCRUM)
removed outer resolving flag (because of movingtransformation after fix_fields)
2003-07-02 01:45:22 +03:00
bell@sanja.is.com.ua
100a101ab6 Merge 2003-06-30 13:14:18 +03:00
bell@sanja.is.com.ua
7c799b17b6 merged 2003-06-29 15:35:48 +03:00
bar@bar.mysql.r18.ru
d31de69795 str0 IN (str1, str2, ...) now works according to collation rules 2003-06-27 13:52:38 +05:00
bar@bar.mysql.r18.ru
52a7f95678 BETWEEN now works according to collation rules 2003-06-27 12:02:08 +05:00
monty@mashka.mysql.fi
34919a03c4 Added thread variable max_seeks_for_key
Change optimizer to prefer key lookups before table scan
Change table scans to be done after tables with constrains on scanned table
2003-06-27 03:04:54 +03:00
bar@bar.mysql.r18.ru
65335d37ff New messages for 3-adic and N-adic operations
REPLACE() now processed arguments collations according to standard
2003-06-26 15:45:04 +05:00
bell@sanja.is.com.ua
e8b1e21615 Merge sanja.is.com.ua:/home/bell/mysql/bk/work-cond_count-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top2-4.1
2003-06-26 11:31:13 +03:00
bell@sanja.is.com.ua
2d120d32fa cond_count moved to SELECT_LEX_NODE
fixed BUG #726
2003-06-26 11:09:11 +03:00
monty@mashka.mysql.fi
7655f05dc2 LEFT JOIN optimization: Change LEFT JOIN to normal join if possible 2003-06-26 05:38:19 +03:00
bell@sanja.is.com.ua
7b77c5a2d3 merged 2003-06-25 23:52:15 +03:00
bar@bar.mysql.r18.ru
cb4539e8de String comparison functions now use the same DTCollation with
CONCAT() and other string functions. This allows to reuse a lot
if code and to simplify further development.
2003-06-24 17:12:07 +05:00
bar@bar.mysql.r18.ru
7371150f2d New class DTCollation (SQL:2003 calls it "declared type collation")
It's a combination of collation and its derivation (precedence order)
2003-06-24 15:11:07 +05:00
bar@bar.mysql.r18.ru
4c7714b7f9 item_cmpfunc.cc:
Temporarily fix for test failure
  ,.
2003-06-20 19:05:45 +05:00
bar@bar.mysql.r18.ru
f78a77798c item_cmpfunc.cc:
Rewritten in nicer way
  ,
2003-06-20 18:45:28 +05:00
monty@narttu.mysql.fi
e090f2d0cc Fixes for make_win_src_distributions
Removed compiler warnings
2003-06-15 23:24:37 +03:00
venu@myvenu.com
8f57d0e2e4 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into myvenu.com:/home/venu/work/sql/dev-4.1
2003-06-03 18:45:53 -07:00
venu@myvenu.com
27469ec8b9 Windows build fixups with the latest source 2003-06-03 18:45:07 -07:00
ram@mysql.r18.ru
a36d4212fc Moved spatial functions to the sql/item_geofunc.cc file. 2003-05-30 15:22:34 +05:00
bar@bar.mysql.r18.ru
e546f33a1d item_cmpfunc.cc:
Fix for multibyte charsets
2003-05-28 11:24:48 +05:00
bell@sanja.is.com.ua
1a064a43a7 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top-4.1
2003-05-26 09:28:56 +03:00
bar@bar.mysql.r18.ru
8192d169a2 CHARSET_INFO structure reorganization for easier maintainance 2003-05-23 17:45:52 +05:00
bar@bar.mysql.r18.ru
ff02bddc1a Automatic conversion into supersets (utf8, ucs2) for comparison in some cases
USER(), DATABASE() and VERSION() return in utf8 now
2003-05-23 10:45:46 +05:00
bell@sanja.is.com.ua
6360bea28d Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-top-4.1
2003-05-22 09:52:22 +03:00
monty@mashka.mysql.fi
cb7061ebe4 merge 2003-05-22 02:57:27 +03:00
monty@mashka.mysql.fi
6aa8929cf3 After merge fixes
Added initialization of all important global variables
2003-05-21 21:39:58 +03:00
bar@bar.mysql.r18.ru
5b788e660a A separate, better error message when it's impossible to aggregate strings for some operation 2003-05-20 16:36:59 +05:00