Commit 06c17bac authored by msvensson@neptunus.(none)'s avatar msvensson@neptunus.(none)

Merge bk-internal.mysql.com:/home/bk/mysql-5.0

into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
parents 1eaf95d5 3c696721
......@@ -22,8 +22,10 @@ else
yassl_dummy_link_fix=
endif
#AUTOMAKE_OPTIONS = nostdinc
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include \
-I$(top_srcdir)/regex $(openssl_includes)
INCLUDES = -I$(top_builddir)/include \
-I$(top_srcdir)/include \
-I$(top_srcdir)/regex \
$(openssl_includes) $(yassl_includes)
LIBS = @CLIENT_LIBS@
LDADD= @CLIENT_EXTRA_LDFLAGS@ \
$(top_builddir)/libmysql/libmysqlclient.la
......
......@@ -77,7 +77,6 @@
#define PAD_SIZE 128
#define MAX_CONS 128
#define MAX_INCLUDE_DEPTH 16
#define LAZY_GUESS_BUF_SIZE 8192
#define INIT_Q_LINES 1024
#define MIN_VAR_ALLOC 32
#define BLOCK_STACK_DEPTH 32
......@@ -1837,23 +1836,28 @@ void free_replace()
DBUG_VOID_RETURN;
}
int select_connection_name(const char *name)
struct connection * find_connection_by_name(const char *name)
{
struct connection *con;
DBUG_ENTER("select_connection2");
DBUG_PRINT("enter",("name: '%s'", name));
for (con= cons; con < next_con; con++)
{
if (!strcmp(con->name, name))
{
cur_con= con;
DBUG_RETURN(0);
return con;
}
}
die("connection '%s' not found in connection pool", name);
DBUG_RETURN(1); /* Never reached */
return 0; /* Connection not found */
}
int select_connection_name(const char *name)
{
DBUG_ENTER("select_connection2");
DBUG_PRINT("enter",("name: '%s'", name));
if (!(cur_con= find_connection_by_name(name)))
die("connection '%s' not found in connection pool", name);
DBUG_RETURN(0);
}
......@@ -1883,7 +1887,7 @@ int close_connection(struct st_query *q)
DBUG_PRINT("enter",("name: '%s'",p));
if (!*p)
die("Missing connection name in connect");
die("Missing connection name in disconnect");
name= p;
while (*p && !my_isspace(charset_info,*p))
p++;
......@@ -1906,6 +1910,14 @@ int close_connection(struct st_query *q)
}
#endif
mysql_close(&con->mysql);
my_free(con->name, MYF(0));
/*
When the connection is closed set name to "closed_connection"
to make it possible to reuse the connection name.
The connection slot will not be reused
*/
if (!(con->name = my_strdup("closed_connection", MYF(MY_WME))))
die("Out of memory");
DBUG_RETURN(0);
}
}
......@@ -1919,20 +1931,35 @@ int close_connection(struct st_query *q)
future to handle quotes. For now we assume that anything that is not
a comma, a space or ) belongs to the argument. space is a chopper, comma or
) are delimiters/terminators
SYNOPSIS
safe_get_param
str - string to get param from
arg - pointer to string where result will be stored
msg - Message to display if param is not found
if msg is 0 this param is not required and param may be empty
RETURNS
pointer to str after param
*/
char* safe_get_param(char *str, char** arg, const char *msg)
{
DBUG_ENTER("safe_get_param");
if(!*str)
{
if (msg)
die(msg);
*arg= str;
DBUG_RETURN(str);
}
while (*str && my_isspace(charset_info,*str))
str++;
*arg= str;
for (; *str && *str != ',' && *str != ')' ; str++)
{
if (my_isspace(charset_info,*str))
*str= 0;
}
if (!*str)
while (*str && *str != ',' && *str != ')')
str++;
if (msg && !*arg)
die(msg);
*str++= 0;
......@@ -2117,13 +2144,39 @@ err:
}
/*
Open a new connection to MySQL Server with the parameters
specified
SYNOPSIS
do_connect()
q called command
DESCRIPTION
connect(<name>,<host>,<user>,<pass>,<db>,[<port>,<sock>[<opts>]]);
<name> - name of the new connection
<host> - hostname of server
<user> - user to connect as
<pass> - password used when connecting
<db> - initial db when connected
<port> - server port
<sock> - server socket
<opts> - options to use for the connection
SSL - use SSL if available
COMPRESS - use compression if available
*/
int do_connect(struct st_query *q)
{
char *con_name, *con_user,*con_pass, *con_host, *con_port_str,
*con_db, *con_sock;
char *p= q->first_argument;
*con_db, *con_sock, *con_options;
char *con_buf, *p;
char buff[FN_REFLEN];
int con_port;
bool con_ssl= 0;
bool con_compress= 0;
int free_con_sock= 0;
int error= 0;
int create_conn= 1;
......@@ -2131,57 +2184,97 @@ int do_connect(struct st_query *q)
DBUG_ENTER("do_connect");
DBUG_PRINT("enter",("connect: %s",p));
/* Make a copy of query before parsing, safe_get_param will modify */
if (!(con_buf= my_strdup(q->first_argument, MYF(MY_WME))))
die("Could not allocate con_buf");
p= con_buf;
if (*p != '(')
die("Syntax error in connect - expected '(' found '%c'", *p);
p++;
p= safe_get_param(p, &con_name, "missing connection name");
p= safe_get_param(p, &con_host, "missing connection host");
p= safe_get_param(p, &con_user, "missing connection user");
p= safe_get_param(p, &con_pass, "missing connection password");
p= safe_get_param(p, &con_db, "missing connection db");
if (!*p || *p == ';') /* Default port and sock */
{
con_port= port;
con_sock= (char*) unix_sock;
}
else
p= safe_get_param(p, &con_name, "Missing connection name");
p= safe_get_param(p, &con_host, "Missing connection host");
p= safe_get_param(p, &con_user, "Missing connection user");
p= safe_get_param(p, &con_pass, "Missing connection password");
p= safe_get_param(p, &con_db, "Missing connection db");
/* Port */
VAR* var_port;
p= safe_get_param(p, &con_port_str, 0);
if (*con_port_str)
{
VAR* var_port, *var_sock;
p= safe_get_param(p, &con_port_str, "missing connection port");
if (*con_port_str == '$')
{
if (!(var_port= var_get(con_port_str, 0, 0, 0)))
die("Unknown variable '%s'", con_port_str+1);
die("Unknown variable '%s'", con_port_str+1);
con_port= var_port->int_val;
}
else
{
con_port= atoi(con_port_str);
p= safe_get_param(p, &con_sock, "missing connection socket");
if (con_port == 0)
die("Illegal argument for port: '%s'", con_port_str);
}
}
else
{
con_port= port;
}
/* Sock */
VAR *var_sock;
p= safe_get_param(p, &con_sock, 0);
if (*con_sock)
{
if (*con_sock == '$')
{
if (!(var_sock= var_get(con_sock, 0, 0, 0)))
die("Unknown variable '%s'", con_sock+1);
die("Unknown variable '%s'", con_sock+1);
if (!(con_sock= (char*)my_malloc(var_sock->str_val_len+1, MYF(0))))
die("Out of memory");
die("Out of memory");
free_con_sock= 1;
memcpy(con_sock, var_sock->str_val, var_sock->str_val_len);
con_sock[var_sock->str_val_len]= 0;
}
}
else
{
con_sock= (char*) unix_sock;
}
/* Options */
p= safe_get_param(p, &con_options, 0);
while (*con_options)
{
char* str= con_options;
while (*str && !my_isspace(charset_info, *str))
str++;
*str++= 0;
if (!strcmp(con_options, "SSL"))
con_ssl= 1;
else if (!strcmp(con_options, "COMPRESS"))
con_compress= 1;
else
die("Illegal option to connect: %s", con_options);
con_options= str;
}
q->last_argument= p;
if (next_con == cons_end)
die("Connection limit exhausted - increase MAX_CONS in mysqltest.c");
if (find_connection_by_name(con_name))
die("Connection %s already exists", con_name);
if (!mysql_init(&next_con->mysql))
die("Failed on mysql_init()");
if (opt_compress)
if (opt_compress || con_compress)
mysql_options(&next_con->mysql,MYSQL_OPT_COMPRESS,NullS);
mysql_options(&next_con->mysql, MYSQL_OPT_LOCAL_INFILE, 0);
mysql_options(&next_con->mysql, MYSQL_SET_CHARSET_NAME, charset_name);
#ifdef HAVE_OPENSSL
if (opt_use_ssl)
if (opt_use_ssl || con_ssl)
mysql_ssl_set(&next_con->mysql, opt_ssl_key, opt_ssl_cert, opt_ssl_ca,
opt_ssl_capath, opt_ssl_cipher);
#endif
......@@ -2212,6 +2305,7 @@ int do_connect(struct st_query *q)
}
if (free_con_sock)
my_free(con_sock, MYF(MY_WME));
my_free(con_buf, MYF(MY_WME));
DBUG_RETURN(error);
}
......
......@@ -15,10 +15,9 @@ AC_DEFUN([MYSQL_CHECK_YASSL], [
fi
AC_MSG_RESULT([using bundled yaSSL])
yassl_dir="extra/yassl"
openssl_libs="\
-L\$(top_builddir)/extra/yassl/src -lyassl\
-L\$(top_builddir)/extra/yassl/taocrypt/src -ltaocrypt"
openssl_includes="-I\$(top_srcdir)/extra/yassl/include"
yassl_libs="-L\$(top_srcdir)/extra/yassl/src -lyassl -L\$(top_srcdir)/extra/yassl/taocrypt/src -ltaocrypt"
yassl_libs_with_path="\$(top_srcdir)/extra/yassl/src/libyassl.a \$(top_srcdir)/extra/yassl/taocrypt/src/libtaocrypt.a"
yassl_includes="-I\$(top_srcdir)/extra/yassl/include"
AC_DEFINE([HAVE_OPENSSL], [1], [Defined by configure. Using yaSSL for OpenSSL emulation.])
AC_DEFINE([HAVE_YASSL], [1], [Defined by configure. Using yaSSL for OpenSSL emulation.])
# System specific checks
......@@ -36,8 +35,9 @@ AC_DEFUN([MYSQL_CHECK_YASSL], [
yassl_dir=""
AC_MSG_RESULT(no)
fi
AC_SUBST(openssl_libs)
AC_SUBST(openssl_includes)
AC_SUBST(yassl_libs)
AC_SUBST(yassl_includes)
AC_SUBST(yassl_dir)
AC_SUBST(yassl_libs_with_path)
AM_CONDITIONAL([HAVE_YASSL], [ test "with_yassl" = "yes" ])
])
......@@ -1129,7 +1129,7 @@ dnl Is this the right match for DEC OSF on alpha?
sql/Makefile.in)
# Use gen_lex_hash.linux instead of gen_lex_hash
# Add library dependencies to mysqld_DEPENDENCIES
lib_DEPENDENCIES="\$(bdb_libs_with_path) \$(innodb_libs) \$(ndbcluster_libs) \$(pstack_libs) \$(innodb_system_libs) \$(openssl_libs)"
lib_DEPENDENCIES="\$(bdb_libs_with_path) \$(innodb_libs) \$(ndbcluster_libs) \$(pstack_libs) \$(innodb_system_libs) \$(openssl_libs) \$(yassl_libs)"
cat > $filesed << EOF
s,\(^.*\$(MAKE) gen_lex_hash\)\$(EXEEXT),#\1,
s,\(\./gen_lex_hash\)\$(EXEEXT),\1.linux,
......
INCLUDES = -I../include -I../taocrypt/include -I../mySTL
noinst_LTLIBRARIES = libyassl.la
libyassl_la_SOURCES = buffer.cpp cert_wrapper.cpp crypto_wrapper.cpp \
noinst_LIBRARIES = libyassl.a
libyassl_a_SOURCES = buffer.cpp cert_wrapper.cpp crypto_wrapper.cpp \
handshake.cpp lock.cpp log.cpp socket_wrapper.cpp ssl.cpp \
template_instnt.cpp timer.cpp yassl_imp.cpp yassl_error.cpp yassl_int.cpp
EXTRA_DIST = ../include/*.hpp ../include/openssl/*.h
......
INCLUDES = -I../include -I../../mySTL
noinst_LTLIBRARIES = libtaocrypt.la libtaoint.la
libtaocrypt_la_SOURCES = aes.cpp aestables.cpp algebra.cpp arc4.cpp asn.cpp \
noinst_LIBRARIES = libtaoint.a libtaocrypt.a
libtaoint_a_SOURCES = integer.cpp
libtaoint_a_CXXFLAGS = @yassl_integer_extra_cxxflags@
libtaocrypt_a_SOURCES = aes.cpp aestables.cpp algebra.cpp arc4.cpp asn.cpp \
coding.cpp dh.cpp des.cpp dsa.cpp file.cpp hash.cpp \
md2.cpp md5.cpp misc.cpp random.cpp ripemd.cpp rsa.cpp sha.cpp \
template_instnt.cpp
libtaocrypt_la_LIBADD = libtaoint.la
libtaoint_la_SOURCES = integer.cpp
libtaoint_la_CXXFLAGS = @yassl_integer_extra_cxxflags@
libtaocrypt_a_LIBADD = libtaoint_a-integer.o
EXTRA_DIST = ../include/*.hpp
AM_CXXFLAGS = -DYASSL_PURE_C
......@@ -22,9 +22,9 @@
target = libmysqlclient.la
target_defs = -DUNDEF_THREADS_HACK -DDONT_USE_RAID @LIB_EXTRA_CCFLAGS@
LIBS = @CLIENT_LIBS@
LIBS = @CLIENT_LIBS@ @yassl_libs@
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include \
$(openssl_includes) @ZLIB_INCLUDES@
$(openssl_includes) $(yassl_includes) @ZLIB_INCLUDES@
include $(srcdir)/Makefile.shared
......
......@@ -22,10 +22,10 @@
target = libmysqlclient_r.la
target_defs = -DDONT_USE_RAID -DMYSQL_CLIENT @LIB_EXTRA_CCFLAGS@
LIBS = @LIBS@ @ZLIB_LIBS@ @openssl_libs@
LIBS = @LIBS@ @ZLIB_LIBS@ @openssl_libs@ @yassl_libs@
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include \
$(openssl_includes) @ZLIB_INCLUDES@
$(openssl_includes) $(yassl_includes) @ZLIB_INCLUDES@
## automake barfs if you don't use $(srcdir) or $(top_srcdir) in include
include $(top_srcdir)/libmysql/Makefile.shared
......
......@@ -29,7 +29,7 @@ INCLUDES= @bdb_includes@ \
-I$(top_builddir)/include -I$(top_srcdir)/include \
-I$(top_srcdir)/sql -I$(top_srcdir)/sql/examples \
-I$(top_srcdir)/regex \
$(openssl_includes) @ZLIB_INCLUDES@
$(openssl_includes) $(yassl_includes) @ZLIB_INCLUDES@
noinst_LIBRARIES = libmysqld_int.a
pkglib_LIBRARIES = libmysqld.a
......@@ -80,7 +80,9 @@ INC_LIB= $(top_builddir)/regex/libregex.a \
$(top_builddir)/mysys/libmysys.a \
$(top_builddir)/strings/libmystrings.a \
$(top_builddir)/dbug/libdbug.a \
$(top_builddir)/vio/libvio.a
$(top_builddir)/vio/libvio.a \
@yassl_libs_with_path@
#
# To make it easy for the end user to use the embedded library we
......
This source diff could not be displayed because it is too large. You can view the blob instead.
-- require r/have_openssl_1.require
disable_query_log;
SHOW STATUS LIKE 'Ssl_cipher';
enable_query_log;
......@@ -187,6 +187,11 @@ our $opt_big_test= 0; # Send --big-test to mysqltest
our @opt_extra_mysqld_opt;
our $opt_compress;
our $opt_ssl;
our $opt_skip_ssl;
our $opt_ssl_supported;
our $opt_ps_protocol;
our $opt_current_test;
our $opt_ddd;
our $opt_debug;
......@@ -237,7 +242,6 @@ our $opt_skip_test;
our $opt_skip_im;
our $opt_sleep;
our $opt_ps_protocol;
our $opt_sleep_time_after_restart= 1;
our $opt_sleep_time_for_delete= 10;
......@@ -278,7 +282,6 @@ our $opt_udiff;
our $opt_skip_ndbcluster;
our $opt_with_ndbcluster;
our $opt_with_openssl;
our $exe_ndb_mgm;
our $path_ndb_tools_dir;
......@@ -299,7 +302,8 @@ sub executable_setup ();
sub environment_setup ();
sub kill_running_server ();
sub kill_and_cleanup ();
sub ndbcluster_support ();
sub check_ssl_support ();
sub check_ndbcluster_support ();
sub ndbcluster_install ();
sub ndbcluster_start ();
sub ndbcluster_stop ();
......@@ -334,11 +338,9 @@ sub main () {
initial_setup();
command_line_setup();
executable_setup();
if (! $opt_skip_ndbcluster and ! $opt_with_ndbcluster)
{
$opt_with_ndbcluster= ndbcluster_support();
}
check_ndbcluster_support();
check_ssl_support();
environment_setup();
signal_setup();
......@@ -488,6 +490,9 @@ sub command_line_setup () {
# Control what engine/variation to run
'embedded-server' => \$opt_embedded_server,
'ps-protocol' => \$opt_ps_protocol,
'ssl|with-openssl' => \$opt_ssl,
'skip-ssl' => \$opt_skip_ssl,
'compress' => \$opt_compress,
'bench' => \$opt_bench,
'small-bench' => \$opt_small_bench,
'no-manager' => \$opt_no_manager, # Currently not used
......@@ -540,7 +545,6 @@ sub command_line_setup () {
# Misc
'big-test' => \$opt_big_test,
'compress' => \$opt_compress,
'debug' => \$opt_debug,
'fast' => \$opt_fast,
'local' => \$opt_local,
......@@ -565,7 +569,6 @@ sub command_line_setup () {
'testcase-timeout=i' => \$opt_testcase_timeout,
'suite-timeout=i' => \$opt_suite_timeout,
'warnings|log-warnings' => \$opt_warnings,
'with-openssl' => \$opt_with_openssl,
'help|h' => \$opt_usage,
) or usage("Can't read options");
......@@ -1170,13 +1173,59 @@ sub kill_and_cleanup () {
}
sub check_ssl_support () {
if ($opt_skip_ssl)
{
mtr_report("Skipping SSL");
$opt_ssl_supported= 0;
$opt_ssl= 0;
return;
}
# check ssl support by testing using a switch
# that is only available in that case
if ( mtr_run($exe_mysqld,
["--no-defaults",
"--ssl",
"--help"],
"", "/dev/null", "/dev/null", "") != 0 )
{
if ( $opt_ssl)
{
mtr_error("Couldn't find support for SSL");
return;
}
mtr_report("Skipping SSL, mysqld not compiled with SSL");
$opt_ssl_supported= 0;
$opt_ssl= 0;
return;
}
mtr_report("Setting mysqld to support SSL connections");
$opt_ssl_supported= 1;
}
##############################################################################
#
# Start the ndb cluster
#
##############################################################################
sub ndbcluster_support () {
sub check_ndbcluster_support () {
if ($opt_skip_ndbcluster)
{
mtr_report("Skipping ndbcluster");
$opt_with_ndbcluster= 0;
return;
}
if ($opt_with_ndbcluster)
{
mtr_report("Using ndbcluster");
return;
}
# check ndbcluster support by testing using a switch
# that is only available in that case
......@@ -1186,11 +1235,13 @@ sub ndbcluster_support () {
"--help"],
"", "/dev/null", "/dev/null", "") != 0 )
{
mtr_report("No ndbcluster support");
return 0;
mtr_report("Skipping ndbcluster, mysqld not compiled with ndbcluster");
$opt_with_ndbcluster= 0;
return;
}
mtr_report("Has ndbcluster support");
return 1;
mtr_report("Using ndbcluster, mysqld supports it");
$opt_with_ndbcluster= 1;
return;
}
# FIXME why is there a different start below?!
......@@ -2075,7 +2126,7 @@ sub mysqld_arguments ($$$$$) {
mtr_add_arg($args, "%s--max_heap_table_size=1M", $prefix);
mtr_add_arg($args, "%s--log-bin-trust-routine-creators", $prefix);
if ( $opt_with_openssl )
if ( $opt_ssl_supported )
{
mtr_add_arg($args, "%s--ssl-ca=%s/std_data/cacert.pem", $prefix,
$glob_mysql_test_dir);
......@@ -2536,14 +2587,26 @@ sub run_mysqltest ($) {
mtr_add_arg($args, "--debug=d:t:A,%s/log/mysqltest.trace", $opt_vardir);
}
if ( $opt_with_openssl )
if ( $opt_ssl_supported )
{
mtr_add_arg($args, "--ssl-ca=%s/std_data/cacert.pem",
$glob_mysql_test_dir);
$glob_mysql_test_dir);
mtr_add_arg($args, "--ssl-cert=%s/std_data/client-cert.pem",
$glob_mysql_test_dir);
$glob_mysql_test_dir);
mtr_add_arg($args, "--ssl-key=%s/std_data/client-key.pem",
$glob_mysql_test_dir);
$glob_mysql_test_dir);
}
# Turn on SSL for all test cases
if ( $opt_ssl )
{
mtr_add_arg($args, "--ssl",
$glob_mysql_test_dir);
}
elsif ( $opt_ssl_supported )
{
mtr_add_arg($args, "--skip-ssl",
$glob_mysql_test_dir);
}
# ----------------------------------------------------------------------
......@@ -2622,6 +2685,9 @@ Options to control what engine/variation to run
embedded-server Use the embedded server, i.e. no mysqld daemons
ps-protocol Use the binary protocol between client and server
compress Use the compressed protocol between client and server
ssl Use ssl protocol between client and server
skip-ssl Dont start sterver with support for ssl connections
bench Run the benchmark suite FIXME
small-bench FIXME
......@@ -2629,6 +2695,7 @@ Options to control what test suites or cases to run
force Continue to run the suite after failure
with-ndbcluster Use cluster, and enable test cases that requres it
skip-ndb[cluster] Skip the ndb test cases, don't start cluster
do-test=PREFIX Run test cases which name are prefixed with PREFIX
start-from=PREFIX Run test cases starting from test prefixed with PREFIX
suite=NAME Run the test suite named NAME. The default is "main"
......@@ -2653,7 +2720,7 @@ Options that pass on options
Options to run test on running server
extern Use running server for tests FIXME DANGEROUS
ndbconnectstring=STR Use running cluster, and connect using STR
ndbconnectstring=STR Use running cluster, and connect using STR
user=USER User for connect to server
Options for debugging the product
......@@ -2681,7 +2748,6 @@ Misc options
verbose Verbose output from this script
script-debug Debug this script itself
compress Use the compressed protocol between client and server
timer Show test case execution time
start-and-exit Only initiate and start the "mysqld" servers, use the startup
settings for the specified test case if any
......@@ -2694,6 +2760,9 @@ Misc options
testcase-timeout=MINUTES Max test case run time (default 5)
suite-timeout=MINUTES Max test suite run time (default 120)
Deprecated options
with-openssl Deprecated option for ssl
Options not yet described, or that I want to look into more
......@@ -2710,7 +2779,6 @@ Options not yet described, or that I want to look into more
wait-timeout=SECONDS
warnings
log-warnings
with-openssl
HERE
mtr_exit(1);
......
SHOW STATUS LIKE 'Compression';
Variable_name Value
Compression ON
drop table if exists t1,t2,t3,t4;
CREATE TABLE t1 (
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
);
INSERT INTO t1 VALUES (9410,9412);
select period from t1;
period
9410
select * from t1;
Period Varor_period
9410 9412
select t1.* from t1;
Period Varor_period
9410 9412
CREATE TABLE t2 (
auto int not null auto_increment,
fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
fld3 char(30) DEFAULT '' NOT NULL,
fld4 char(35) DEFAULT '' NOT NULL,
fld5 char(35) DEFAULT '' NOT NULL,
fld6 char(4) DEFAULT '' NOT NULL,
UNIQUE fld1 (fld1),
KEY fld3 (fld3),
PRIMARY KEY (auto)
);
select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
fld3
imaginable
select fld3 from t2 where fld3 like "%cultivation" ;
fld3
cultivation
select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
fld3 companynr
concoct 58
druggists 58
engrossing 58
Eurydice 58
exclaimers 58
ferociousness 58
hopelessness 58
Huey 58
imaginable 58
judges 58
merging 58
ostrich 58
peering 58
Phelps 58
presumes 58
Ruth 58
sentences 58
Shylock 58
straggled 58
synergy 58
thanking 58
tying 58
unlocks 58
select fld3,companynr from t2 where companynr = 58 order by fld3;
fld3 companynr
concoct 58
druggists 58
engrossing 58
Eurydice 58
exclaimers 58
ferociousness 58
hopelessness 58
Huey 58
imaginable 58
judges 58
merging 58
ostrich 58
peering 58
Phelps 58
presumes 58
Ruth 58
sentences 58
Shylock 58
straggled 58
synergy 58
thanking 58
tying 58
unlocks 58
select fld3 from t2 order by fld3 desc limit 10;
fld3
youthfulness
yelped
Wotan
workers
Witt
witchcraft
Winsett
Willy
willed
wildcats
select fld3 from t2 order by fld3 desc limit 5;
fld3
youthfulness
yelped
Wotan
workers
Witt
select fld3 from t2 order by fld3 desc limit 5,5;
fld3
witchcraft
Winsett
Willy
willed
wildcats
select t2.fld3 from t2 where fld3 = 'honeysuckle';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'h%le';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
fld3
select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
fld3
explain select t2.fld3 from t2 where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select fld3 from t2 use index (fld1) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select fld3 from t2 use index (fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
ERROR 42000: Key column 'not_used' doesn't exist in table
explain select fld3 from t2 use index (not_used);
ERROR 42000: Key column 'not_used' doesn't exist in table
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
honoring
explain select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld3 fld3 30 NULL 2 Using where; Using index
select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
fld1 fld3
148504 Colombo
068305 Colombo
000000 nondecreasing
select fld1,fld3 from t2 where companynr = 37 and fld3 = 'appendixes';
fld1 fld3
232605 appendixes
1232605 appendixes
1232606 appendixes
1232607 appendixes
1232608 appendixes
1232609 appendixes
select fld1 from t2 where fld1=250501 or fld1="250502";
fld1
250501
250502
explain select fld1 from t2 where fld1=250501 or fld1="250502";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld1 fld1 4 NULL 2 Using where; Using index
select fld1 from t2 where fld1=250501 or fld1=250502 or fld1 >= 250505 and fld1 <= 250601 or fld1 between 250501 and 250502;
fld1
250501
250502
250505
250601
explain select fld1 from t2 where fld1=250501 or fld1=250502 or fld1 >= 250505 and fld1 <= 250601 or fld1 between 250501 and 250502;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld1 fld1 4 NULL 4 Using where; Using index
select fld1,fld3 from t2 where companynr = 37 and fld3 like 'f%';
fld1 fld3
218401 faithful
018007 fanatic
228311 fated
018017 featherweight
218022 feed
088303 feminine
058004 Fenton
038017 fetched
018054 fetters
208101 fiftieth
238007 filial
013606 fingerings
218008 finishers
038205 firearm
188505 fitting
202301 Fitzpatrick
238008 fixedly
012001 flanking
018103 flint
018104 flopping
188007 flurried
013602 foldout
226205 foothill
232102 forgivably
228306 forthcoming
186002 freakish
208113 freest
231315 freezes
036002 funereal
226209 furnishings
198006 furthermore
select fld3 from t2 where fld3 like "L%" and fld3 = "ok";
fld3
select fld3 from t2 where (fld3 like "C%" and fld3 = "Chantilly");
fld3
Chantilly
select fld1,fld3 from t2 where fld1 like "25050%";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
select fld1,fld3 from t2 where fld1 like "25050_";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
select distinct companynr from t2;
companynr
00
37
36
50
58
29
40
53
65
41
34
68
select distinct companynr from t2 order by companynr;
companynr
00
29
34
36
37
40
41
50
53
58
65
68
select distinct companynr from t2 order by companynr desc;
companynr
68
65
58
53
50
41
40
37
36
34
29
00
select distinct t2.fld3,period from t2,t1 where companynr=37 and fld3 like "O%";
fld3 period
obliterates 9410
offload 9410
opaquely 9410
organizer 9410
overestimating 9410
overlay 9410
select distinct fld3 from t2 where companynr = 34 order by fld3;
fld3
absentee
accessed
ahead
alphabetic
Asiaticizations
attitude
aye
bankruptcies
belays
Blythe
bomb
boulevard
bulldozes
cannot
caressing
charcoal
checksumming
chess
clubroom
colorful
cosy
creator
crying
Darius
diffusing
duality
Eiffel
Epiphany
Ernestine
explorers
exterminated
famine
forked
Gershwins
heaving
Hodges
Iraqis
Italianization
Lagos
landslide
libretto
Majorca
mastering
narrowed
occurred
offerers
Palestine
Peruvianizes
pharmaceutic
poisoning
population
Pygmalion
rats
realest
recording
regimented
retransmitting
reviver
rouses
scars
sicker
sleepwalk
stopped
sugars
translatable
uncles
unexpected
uprisings
versatility
vest
select distinct fld3 from t2 limit 10;
fld3
abates
abiding
Abraham
abrogating
absentee
abut
accessed
accruing
accumulating
accuracies
select distinct fld3 from t2 having fld3 like "A%" limit 10;
fld3
abates
abiding
Abraham
abrogating
absentee
abut
accessed
accruing
accumulating
accuracies
select distinct substring(fld3,1,3) from t2 where fld3 like "A%";
substring(fld3,1,3)
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
Adl
adm
Ado
ads
adv
aer
aff
afi
afl
afo
agi
ahe
aim
air
Ald
alg
ali
all
alp
alr
ama
ame
amm
ana
and
ane
Ang
ani
Ann
Ant
api
app
aqu
Ara
arc
Arm
arr
Art
Asi
ask
asp
ass
ast
att
aud
Aug
aut
ave
avo
awe
aye
Azt
select distinct substring(fld3,1,3) as a from t2 having a like "A%" order by a limit 10;
a
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
select distinct substring(fld3,1,3) from t2 where fld3 like "A%" limit 10;
substring(fld3,1,3)
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
select distinct substring(fld3,1,3) as a from t2 having a like "A%" limit 10;
a
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
create table t3 (
period int not null,
name char(32) not null,
companynr int not null,
price double(11,0),
price2 double(11,0),
key (period),
key (name)
);
create temporary table tmp engine = myisam select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
alter table t3 add t2nr int not null auto_increment primary key first;
drop table tmp;
SET SQL_BIG_TABLES=1;
select distinct concat(fld3," ",fld3) as namn from t2,t3 where t2.fld1=t3.t2nr order by namn limit 10;
namn
Abraham Abraham
abrogating abrogating
admonishing admonishing
Adolph Adolph
afield afield
aging aging
ammonium ammonium
analyzable analyzable
animals animals
animized animized
SET SQL_BIG_TABLES=0;
select distinct concat(fld3," ",fld3) from t2,t3 where t2.fld1=t3.t2nr order by fld3 limit 10;
concat(fld3," ",fld3)
Abraham Abraham
abrogating abrogating
admonishing admonishing
Adolph Adolph
afield afield
aging aging
ammonium ammonium
analyzable analyzable
animals animals
animized animized
select distinct fld5 from t2 limit 10;
fld5
neat
Steinberg
jarring
tinily
balled
persist
attainments
fanatic
measures
rightfulness
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
and 1
annoyers 1
Anthony 1
assayed 1
assurers 1
attendants 1
bedlam 1
bedpost 1
boasted 1
SET SQL_BIG_TABLES=1;
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
and 1
annoyers 1
Anthony 1
assayed 1
assurers 1
attendants 1
bedlam 1
bedpost 1
boasted 1
SET SQL_BIG_TABLES=0;
select distinct fld3,repeat("a",length(fld3)),count(*) from t2 group by companynr,fld3 limit 100,10;
fld3 repeat("a",length(fld3)) count(*)
circus aaaaaa 1
cited aaaaa 1
Colombo aaaaaaa 1
congresswoman aaaaaaaaaaaaa 1
contrition aaaaaaaaaa 1
corny aaaaa 1
cultivation aaaaaaaaaaa 1
definiteness aaaaaaaaaaaa 1
demultiplex aaaaaaaaaaa 1
disappointing aaaaaaaaaaaaa 1
select distinct companynr,rtrim(space(512+companynr)) from t3 order by 1,2;
companynr rtrim(space(512+companynr))
37
78
101
154
311
447
512
select distinct fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2nr order by fld3;
fld3
explain select t3.t2nr,fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2nr order by t3.t2nr,fld3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL fld1 NULL NULL NULL 1199 Using where; Using temporary; Using filesort
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.fld1 1 Using where; Using index
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL period NULL NULL NULL 41810 Using temporary; Using filesort
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 index period period 4 NULL 41810
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index period period 4 NULL 41810
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
9410
select period from t1 where period=1900;
period
select fld3,period from t1,t2 where fld1 = 011401 order by period;
fld3 period
breaking 9410
select fld3,period from t2,t3 where t2.fld1 = 011401 and t2.fld1=t3.t2nr and t3.period=1001;
fld3 period
breaking 1001
explain select fld3,period from t2,t3 where t2.fld1 = 011401 and t3.t2nr=t2.fld1 and 1001 = t3.period;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 const fld1 fld1 4 const 1
1 SIMPLE t3 const PRIMARY,period PRIMARY 4 const 1
select fld3,period from t2,t1 where companynr*10 = 37*10;
fld3 period
breaking 9410
Romans 9410
intercepted 9410
bewilderingly 9410
astound 9410
admonishing 9410
sumac 9410
flanking 9410
combed 9410
subjective 9410
scatterbrain 9410
Eulerian 9410
Kane 9410
overlay 9410
perturb 9410
goblins 9410
annihilates 9410
Wotan 9410
snatching 9410
concludes 9410
laterally 9410
yelped 9410
grazing 9410
Baird 9410
celery 9410
misunderstander 9410
handgun 9410
foldout 9410
mystic 9410
succumbed 9410
Nabisco 9410
fingerings 9410
aging 9410
afield 9410
ammonium 9410
boat 9410
intelligibility 9410
Augustine 9410
teethe 9410
dreaded 9410
scholastics 9410
audiology 9410
wallet 9410
parters 9410
eschew 9410
quitter 9410
neat 9410
Steinberg 9410
jarring 9410
tinily 9410
balled 9410
persist 9410
attainments 9410
fanatic 9410
measures 9410
rightfulness 9410
capably 9410
impulsive 9410
starlet 9410
terminators 9410
untying 9410
announces 9410
featherweight 9410
pessimist 9410
daughter 9410
decliner 9410
lawgiver 9410
stated 9410
readable 9410
attrition 9410
cascade 9410
motors 9410
interrogate 9410
pests 9410
stairway 9410
dopers 9410
testicle 9410
Parsifal 9410
leavings 9410
postulation 9410
squeaking 9410
contrasted 9410
leftover 9410
whiteners 9410
erases 9410
Punjab 9410
Merritt 9410
Quixotism 9410
sweetish 9410
dogging 9410
scornfully 9410
bellow 9410
bills 9410
cupboard 9410
sureties 9410
puddings 9410
fetters 9410
bivalves 9410
incurring 9410
Adolph 9410
pithed 9410
Miles 9410
trimmings 9410
tragedies 9410
skulking 9410
flint 9410
flopping 9410
relaxing 9410
offload 9410
suites 9410
lists 9410
animized 9410
multilayer 9410
standardizes 9410
Judas 9410
vacuuming 9410
dentally 9410
humanness 9410
inch 9410
Weissmuller 9410
irresponsibly 9410
luckily 9410
culled 9410
medical 9410
bloodbath 9410
subschema 9410
animals 9410
Micronesia 9410
repetitions 9410
Antares 9410
ventilate 9410
pityingly 9410
interdependent 9410
Graves 9410
neonatal 9410
chafe 9410
honoring 9410
realtor 9410
elite 9410
funereal 9410
abrogating 9410
sorters 9410
Conley 9410
lectured 9410
Abraham 9410
Hawaii 9410
cage 9410
hushes 9410
Simla 9410
reporters 9410
Dutchman 9410
descendants 9410
groupings 9410
dissociate 9410
coexist 9410
Beebe 9410
Taoism 9410
Connally 9410
fetched 9410
checkpoints 9410
rusting 9410
galling 9410
obliterates 9410
traitor 9410
resumes 9410
analyzable 9410
terminator 9410
gritty 9410
firearm 9410
minima 9410
Selfridge 9410
disable 9410
witchcraft 9410
betroth 9410
Manhattanize 9410
imprint 9410
peeked 9410
swelling 9410
interrelationships 9410
riser 9410
Gandhian 9410
peacock 9410
bee 9410
kanji 9410
dental 9410
scarf 9410
chasm 9410
insolence 9410
syndicate 9410
alike 9410
imperial 9410
convulsion 9410
railway 9410
validate 9410
normalizes 9410
comprehensive 9410
chewing 9410
denizen 9410
schemer 9410
chronicle 9410
Kline 9410
Anatole 9410
partridges 9410
brunch 9410
recruited 9410
dimensions 9410
Chicana 9410
announced 9410
praised 9410
employing 9410
linear 9410
quagmire 9410
western 9410
relishing 9410
serving 9410
scheduling 9410
lore 9410
eventful 9410
arteriole 9410
disentangle 9410
cured 9410
Fenton 9410
avoidable 9410
drains 9410
detectably 9410
husky 9410
impelling 9410
undoes 9410
evened 9410
squeezes 9410
destroyer 9410
rudeness 9410
beaner 9410
boorish 9410
Everhart 9410
encompass 9410
mushrooms 9410
Alison 9410
externally 9410
pellagra 9410
cult 9410
creek 9410
Huffman 9410
Majorca 9410
governing 9410
gadfly 9410
reassigned 9410
intentness 9410
craziness 9410
psychic 9410
squabbled 9410
burlesque 9410
capped 9410
extracted 9410
DiMaggio 9410
exclamation 9410
subdirectory 9410
Gothicism 9410
feminine 9410
metaphysically 9410
sanding 9410
Miltonism 9410
freakish 9410
index 9410
straight 9410
flurried 9410
denotative 9410
coming 9410
commencements 9410
gentleman 9410
gifted 9410
Shanghais 9410
sportswriting 9410
sloping 9410
navies 9410
leaflet 9410
shooter 9410
Joplin 9410
babies 9410
assails 9410
admiring 9410
swaying 9410
Goldstine 9410
fitting 9410
Norwalk 9410
analogy 9410
deludes 9410
cokes 9410
Clayton 9410
exhausts 9410
causality 9410
sating 9410
icon 9410
throttles 9410
communicants 9410
dehydrate 9410
priceless 9410
publicly 9410
incidentals 9410
commonplace 9410
mumbles 9410
furthermore 9410
cautioned 9410
parametrized 9410
registration 9410
sadly 9410
positioning 9410
babysitting 9410
eternal 9410
hoarder 9410
congregates 9410
rains 9410
workers 9410
sags 9410
unplug 9410
garage 9410
boulder 9410
specifics 9410
Teresa 9410
Winsett 9410
convenient 9410
buckboards 9410
amenities 9410
resplendent 9410
sews 9410
participated 9410
Simon 9410
certificates 9410
Fitzpatrick 9410
Evanston 9410
misted 9410
textures 9410
save 9410
count 9410
rightful 9410
chaperone 9410
Lizzy 9410
clenched 9410
effortlessly 9410
accessed 9410
beaters 9410
Hornblower 9410
vests 9410
indulgences 9410
infallibly 9410
unwilling 9410
excrete 9410
spools 9410
crunches 9410
overestimating 9410
ineffective 9410
humiliation 9410
sophomore 9410
star 9410
rifles 9410
dialysis 9410
arriving 9410
indulge 9410
clockers 9410
languages 9410
Antarctica 9410
percentage 9410
ceiling 9410
specification 9410
regimented 9410
ciphers 9410
pictures 9410
serpents 9410
allot 9410
realized 9410
mayoral 9410
opaquely 9410
hostess 9410
fiftieth 9410
incorrectly 9410
decomposition 9410
stranglings 9410
mixture 9410
electroencephalography 9410
similarities 9410
charges 9410
freest 9410
Greenberg 9410
tinting 9410
expelled 9410
warm 9410
smoothed 9410
deductions 9410
Romano 9410
bitterroot 9410
corset 9410
securing 9410
environing 9410
cute 9410
Crays 9410
heiress 9410
inform 9410
avenge 9410
universals 9410
Kinsey 9410
ravines 9410
bestseller 9410
equilibrium 9410
extents 9410
relatively 9410
pressure 9410
critiques 9410
befouled 9410
rightfully 9410
mechanizing 9410
Latinizes 9410
timesharing 9410
Aden 9410
embassies 9410
males 9410
shapelessly 9410
mastering 9410
Newtonian 9410
finishers 9410
abates 9410
teem 9410
kiting 9410
stodgy 9410
feed 9410
guitars 9410
airships 9410
store 9410
denounces 9410
Pyle 9410
Saxony 9410
serializations 9410
Peruvian 9410
taxonomically 9410
kingdom 9410
stint 9410
Sault 9410
faithful 9410
Ganymede 9410
tidiness 9410
gainful 9410
contrary 9410
Tipperary 9410
tropics 9410
theorizers 9410
renew 9410
already 9410
terminal 9410
Hegelian 9410
hypothesizer 9410
warningly 9410
journalizing 9410
nested 9410
Lars 9410
saplings 9410
foothill 9410
labeled 9410
imperiously 9410
reporters 9410
furnishings 9410
precipitable 9410
discounts 9410
excises 9410
Stalin 9410
despot 9410
ripeness 9410
Arabia 9410
unruly 9410
mournfulness 9410
boom 9410
slaughter 9410
Sabine 9410
handy 9410
rural 9410
organizer 9410
shipyard 9410
civics 9410
inaccuracy 9410
rules 9410
juveniles 9410
comprised 9410
investigations 9410
stabilizes 9410
seminaries 9410
Hunter 9410
sporty 9410
test 9410
weasels 9410
CERN 9410
tempering 9410
afore 9410
Galatean 9410
techniques 9410
error 9410
veranda 9410
severely 9410
Cassites 9410
forthcoming 9410
guides 9410
vanish 9410
lied 9410
sawtooth 9410
fated 9410
gradually 9410
widens 9410
preclude 9410
evenhandedly 9410
percentage 9410
disobedience 9410
humility 9410
gleaning 9410
petted 9410
bloater 9410
minion 9410
marginal 9410
apiary 9410
measures 9410
precaution 9410
repelled 9410
primary 9410
coverings 9410
Artemia 9410
navigate 9410
spatial 9410
Gurkha 9410
meanwhile 9410
Melinda 9410
Butterfield 9410
Aldrich 9410
previewing 9410
glut 9410
unaffected 9410
inmate 9410
mineral 9410
impending 9410
meditation 9410
ideas 9410
miniaturizes 9410
lewdly 9410
title 9410
youthfulness 9410
creak 9410
Chippewa 9410
clamored 9410
freezes 9410
forgivably 9410
reduce 9410
McGovern 9410
Nazis 9410
epistle 9410
socializes 9410
conceptions 9410
Kevin 9410
uncovering 9410
chews 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
raining 9410
infest 9410
compartment 9410
minting 9410
ducks 9410
roped 9410
waltz 9410
Lillian 9410
repressions 9410
chillingly 9410
noncritical 9410
lithograph 9410
spongers 9410
parenthood 9410
posed 9410
instruments 9410
filial 9410
fixedly 9410
relives 9410
Pandora 9410
watering 9410
ungrateful 9410
secures 9410
poison 9410
dusted 9410
encompasses 9410
presentation 9410
Kantian 9410
select fld3,period,price,price2 from t2,t3 where t2.fld1=t3.t2nr and period >= 1001 and period <= 1002 and t2.companynr = 37 order by fld3,period, price;
fld3 period price price2
admonishing 1002 28357832 8723648
analyzable 1002 28357832 8723648
annihilates 1001 5987435 234724
Antares 1002 28357832 8723648
astound 1001 5987435 234724
audiology 1001 5987435 234724
Augustine 1002 28357832 8723648
Baird 1002 28357832 8723648
bewilderingly 1001 5987435 234724
breaking 1001 5987435 234724
Conley 1001 5987435 234724
dentally 1002 28357832 8723648
dissociate 1002 28357832 8723648
elite 1001 5987435 234724
eschew 1001 5987435 234724
Eulerian 1001 5987435 234724
flanking 1001 5987435 234724
foldout 1002 28357832 8723648
funereal 1002 28357832 8723648
galling 1002 28357832 8723648
Graves 1001 5987435 234724
grazing 1001 5987435 234724
groupings 1001 5987435 234724
handgun 1001 5987435 234724
humility 1002 28357832 8723648
impulsive 1002 28357832 8723648
inch 1001 5987435 234724
intelligibility 1001 5987435 234724
jarring 1001 5987435 234724
lawgiver 1001 5987435 234724
lectured 1002 28357832 8723648
Merritt 1002 28357832 8723648
neonatal 1001 5987435 234724
offload 1002 28357832 8723648
parters 1002 28357832 8723648
pityingly 1002 28357832 8723648
puddings 1002 28357832 8723648
Punjab 1001 5987435 234724
quitter 1002 28357832 8723648
realtor 1001 5987435 234724
relaxing 1001 5987435 234724
repetitions 1001 5987435 234724
resumes 1001 5987435 234724
Romans 1002 28357832 8723648
rusting 1001 5987435 234724
scholastics 1001 5987435 234724
skulking 1002 28357832 8723648
stated 1002 28357832 8723648
suites 1002 28357832 8723648
sureties 1001 5987435 234724
testicle 1002 28357832 8723648
tinily 1002 28357832 8723648
tragedies 1001 5987435 234724
trimmings 1001 5987435 234724
vacuuming 1001 5987435 234724
ventilate 1001 5987435 234724
wallet 1001 5987435 234724
Weissmuller 1002 28357832 8723648
Wotan 1002 28357832 8723648
select t2.fld1,fld3,period,price,price2 from t2,t3 where t2.fld1>= 18201 and t2.fld1 <= 18811 and t2.fld1=t3.t2nr and period = 1001 and t2.companynr = 37;
fld1 fld3 period price price2
018201 relaxing 1001 5987435 234724
018601 vacuuming 1001 5987435 234724
018801 inch 1001 5987435 234724
018811 repetitions 1001 5987435 234724
create table t4 (
companynr tinyint(2) unsigned zerofill NOT NULL default '00',
companyname char(30) NOT NULL default '',
PRIMARY KEY (companynr),
UNIQUE KEY companyname(companyname)
) ENGINE=MyISAM MAX_ROWS=50 PACK_KEYS=1 COMMENT='companynames';
select STRAIGHT_JOIN t2.companynr,companyname from t4,t2 where t2.companynr=t4.companynr group by t2.companynr;
companynr companyname
00 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select SQL_SMALL_RESULT t2.companynr,companyname from t4,t2 where t2.companynr=t4.companynr group by t2.companynr;
companynr companyname
00 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select * from t1,t1 t12;
Period Varor_period Period Varor_period
9410 9412 9410 9412
select t2.fld1,t22.fld1 from t2,t2 t22 where t2.fld1 >= 250501 and t2.fld1 <= 250505 and t22.fld1 >= 250501 and t22.fld1 <= 250505;
fld1 fld1
250501 250501
250502 250501
250503 250501
250504 250501
250505 250501
250501 250502
250502 250502
250503 250502
250504 250502
250505 250502
250501 250503
250502 250503
250503 250503
250504 250503
250505 250503
250501 250504
250502 250504
250503 250504
250504 250504
250505 250504
250501 250505
250502 250505
250503 250505
250504 250505
250505 250505
insert into t2 (fld1, companynr) values (999999,99);
select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
companynr companyname
99 NULL
select count(*) from t2 left join t4 using (companynr) where t4.companynr is not null;
count(*)
1199
explain select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1 Using where; Not exists
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200 Using where; Not exists
select companynr,companyname from t2 left join t4 using (companynr) where companynr is null;
companynr companyname
select count(*) from t2 left join t4 using (companynr) where companynr is not null;
count(*)
1200
explain select companynr,companyname from t2 left join t4 using (companynr) where companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
delete from t2 where fld1=999999;
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 and t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 and companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0 or t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where ifnull(t2.companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr < 0 or companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where ifnull(companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
companynr companynr
37 36
41 40
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select t2.fld1,t2.companynr,fld3,period from t3,t2 where (t2.fld1 = 38208 or t2.fld1 = 38008) and t2.fld1=t3.t2nr and period>=1008 and period<=1009;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select t2.fld1,t2.companynr,fld3,period from t3,t2 where (t3.t2nr = 38208 or t3.t2nr = 38008) and t2.fld1=t3.t2nr and period>=1008 and period<=1009;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select period from t1 where (((period > 0) or period < 10000 or (period = 1900)) and (period=1900 and period <= 1901) or (period=1903 and (period=1903)) and period>=1902) or ((period=1904 or period=1905) or (period=1906 or period>1907)) or (period=1908 and period = 1909);
period
9410
select period from t1 where ((period > 0 and period < 1) or (((period > 0 and period < 100) and (period > 10)) or (period > 10)) or (period > 0 and (period > 5 or period > 6)));
period
9410
select a.fld1 from t2 as a,t2 b where ((a.fld1 = 250501 and a.fld1=b.fld1) or a.fld1=250502 or a.fld1=250503 or (a.fld1=250505 and a.fld1<=b.fld1 and b.fld1>=a.fld1)) and a.fld1=b.fld1;
fld1
250501
250502
250503
250505
select fld1 from t2 where fld1 in (250502,98005,98006,250503,250605,250606) and fld1 >=250502 and fld1 not in (250605,250606);
fld1
250502
250503
select fld1 from t2 where fld1 between 250502 and 250504;
fld1
250502
250503
250504
select fld3 from t2 where (((fld3 like "_%L%" ) or (fld3 like "%ok%")) and ( fld3 like "L%" or fld3 like "G%")) and fld3 like "L%" ;
fld3
label
labeled
labeled
landslide
laterally
leaflet
lewdly
Lillian
luckily
select count(*) from t1;
count(*)
1
select companynr,count(*),sum(fld1) from t2 group by companynr;
companynr count(*) sum(fld1)
00 82 10355753
29 95 14473298
34 70 17788966
36 215 22786296
37 588 83602098
40 37 6618386
41 52 12816335
50 11 1595438
53 4 793210
58 23 2254293
65 10 2284055
68 12 3097288
select companynr,count(*) from t2 group by companynr order by companynr desc limit 5;
companynr count(*)
68 12
65 10
58 23
53 4
50 11
select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
Warnings:
Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
29 95 abut wetness 14473298 152350.5053 8368.5480 70032594.9026
34 70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
select companynr,t2nr,count(price),sum(price),min(price),max(price),avg(price) from t3 where companynr = 37 group by companynr,t2nr limit 10;
companynr t2nr count(price) sum(price) min(price) max(price) avg(price)
37 1 1 5987435 5987435 5987435 5987435.0000
37 2 1 28357832 28357832 28357832 28357832.0000
37 3 1 39654943 39654943 39654943 39654943.0000
37 11 1 5987435 5987435 5987435 5987435.0000
37 12 1 28357832 28357832 28357832 28357832.0000
37 13 1 39654943 39654943 39654943 39654943.0000
37 21 1 5987435 5987435 5987435 5987435.0000
37 22 1 28357832 28357832 28357832 28357832.0000
37 23 1 39654943 39654943 39654943 39654943.0000
37 31 1 5987435 5987435 5987435 5987435.0000
select /*! SQL_SMALL_RESULT */ companynr,t2nr,count(price),sum(price),min(price),max(price),avg(price) from t3 where companynr = 37 group by companynr,t2nr limit 10;
companynr t2nr count(price) sum(price) min(price) max(price) avg(price)
37 1 1 5987435 5987435 5987435 5987435.0000
37 2 1 28357832 28357832 28357832 28357832.0000
37 3 1 39654943 39654943 39654943 39654943.0000
37 11 1 5987435 5987435 5987435 5987435.0000
37 12 1 28357832 28357832 28357832 28357832.0000
37 13 1 39654943 39654943 39654943 39654943.0000
37 21 1 5987435 5987435 5987435 5987435.0000
37 22 1 28357832 28357832 28357832 28357832.0000
37 23 1 39654943 39654943 39654943 39654943.0000
37 31 1 5987435 5987435 5987435 5987435.0000
select companynr,count(price),sum(price),min(price),max(price),avg(price) from t3 group by companynr ;
companynr count(price) sum(price) min(price) max(price) avg(price)
37 12543 309394878010 5987435 39654943 24666736.6667
78 8362 414611089292 726498 98439034 49582766.0000
101 4181 3489454238 834598 834598 834598.0000
154 4181 4112197254950 983543950 983543950 983543950.0000
311 4181 979599938 234298 234298 234298.0000
447 4181 9929180954 2374834 2374834 2374834.0000
512 4181 3288532102 786542 786542 786542.0000
select distinct mod(companynr,10) from t4 group by companynr;
mod(companynr,10)
0
9
4
6
7
1
3
8
5
select distinct 1 from t4 group by companynr;
1
1
select count(distinct fld1) from t2;
count(distinct fld1)
1199
select companynr,count(distinct fld1) from t2 group by companynr;
companynr count(distinct fld1)
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(*) from t2 group by companynr;
companynr count(*)
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct concat(fld1,repeat(65,1000))) from t2 group by companynr;
companynr count(distinct concat(fld1,repeat(65,1000)))
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct concat(fld1,repeat(65,200))) from t2 group by companynr;
companynr count(distinct concat(fld1,repeat(65,200)))
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct floor(fld1/100)) from t2 group by companynr;
companynr count(distinct floor(fld1/100))
00 47
29 35
34 14
36 69
37 108
40 16
41 11
50 9
53 1
58 1
65 1
68 1
select companynr,count(distinct concat(repeat(65,1000),floor(fld1/100))) from t2 group by companynr;
companynr count(distinct concat(repeat(65,1000),floor(fld1/100)))
00 47
29 35
34 14
36 69
37 108
40 16
41 11
50 9
53 1
58 1
65 1
68 1
select sum(fld1),fld3 from t2 where fld3="Romans" group by fld1 limit 10;
sum(fld1) fld3
11402 Romans
select name,count(*) from t3 where name='cloakroom' group by name;
name count(*)
cloakroom 4181
select name,count(*) from t3 where name='cloakroom' and price>10 group by name;
name count(*)
cloakroom 4181
select count(*) from t3 where name='cloakroom' and price2=823742;
count(*)
4181
select name,count(*) from t3 where name='cloakroom' and price2=823742 group by name;
name count(*)
cloakroom 4181
select name,count(*) from t3 where name >= "extramarital" and price <= 39654943 group by name;
name count(*)
extramarital 4181
gazer 4181
gems 4181
Iranizes 4181
spates 4181
tucked 4181
violinist 4181
select t2.fld3,count(*) from t2,t3 where t2.fld1=158402 and t3.name=t2.fld3 group by t3.name;
fld3 count(*)
spates 4181
select companynr|0,companyname from t4 group by 1;
companynr|0 companyname
0 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select t2.companynr,companyname,count(*) from t2,t4 where t2.companynr=t4.companynr group by t2.companynr order by companyname;
companynr companyname count(*)
29 company 1 95
68 company 10 12
50 company 11 11
34 company 2 70
36 company 3 215
37 company 4 588
40 company 5 37
41 company 6 52
53 company 7 4
58 company 8 23
65 company 9 10
00 Unknown 82
select t2.fld1,count(*) from t2,t3 where t2.fld1=158402 and t3.name=t2.fld3 group by t3.name;
fld1 count(*)
158402 4181
select sum(Period)/count(*) from t1;
sum(Period)/count(*)
9410.0000
select companynr,count(price) as "count",sum(price) as "sum" ,abs(sum(price)/count(price)-avg(price)) as "diff",(0+count(price))*companynr as func from t3 group by companynr;
companynr count sum diff func
37 12543 309394878010 0.0000 464091
78 8362 414611089292 0.0000 652236
101 4181 3489454238 0.0000 422281
154 4181 4112197254950 0.0000 643874
311 4181 979599938 0.0000 1300291
447 4181 9929180954 0.0000 1868907
512 4181 3288532102 0.0000 2140672
select companynr,sum(price)/count(price) as avg from t3 group by companynr having avg > 70000000 order by avg;
companynr avg
154 983543950.0000
select companynr,count(*) from t2 group by companynr order by 2 desc;
companynr count(*)
37 588
36 215
29 95
00 82
34 70
41 52
40 37
58 23
68 12
50 11
65 10
53 4
select companynr,count(*) from t2 where companynr > 40 group by companynr order by 2 desc;
companynr count(*)
41 52
58 23
68 12
50 11
65 10
53 4
select t2.fld4,t2.fld1,count(price),sum(price),min(price),max(price),avg(price) from t3,t2 where t3.companynr = 37 and t2.fld1 = t3.t2nr group by fld1,t2.fld4;
fld4 fld1 count(price) sum(price) min(price) max(price) avg(price)
teethe 000001 1 5987435 5987435 5987435 5987435.0000
dreaded 011401 1 5987435 5987435 5987435 5987435.0000
scholastics 011402 1 28357832 28357832 28357832 28357832.0000
audiology 011403 1 39654943 39654943 39654943 39654943.0000
wallet 011501 1 5987435 5987435 5987435 5987435.0000
parters 011701 1 5987435 5987435 5987435 5987435.0000
eschew 011702 1 28357832 28357832 28357832 28357832.0000
quitter 011703 1 39654943 39654943 39654943 39654943.0000
neat 012001 1 5987435 5987435 5987435 5987435.0000
Steinberg 012003 1 39654943 39654943 39654943 39654943.0000
balled 012301 1 5987435 5987435 5987435 5987435.0000
persist 012302 1 28357832 28357832 28357832 28357832.0000
attainments 012303 1 39654943 39654943 39654943 39654943.0000
capably 012501 1 5987435 5987435 5987435 5987435.0000
impulsive 012602 1 28357832 28357832 28357832 28357832.0000
starlet 012603 1 39654943 39654943 39654943 39654943.0000
featherweight 012701 1 5987435 5987435 5987435 5987435.0000
pessimist 012702 1 28357832 28357832 28357832 28357832.0000
daughter 012703 1 39654943 39654943 39654943 39654943.0000
lawgiver 013601 1 5987435 5987435 5987435 5987435.0000
stated 013602 1 28357832 28357832 28357832 28357832.0000
readable 013603 1 39654943 39654943 39654943 39654943.0000
testicle 013801 1 5987435 5987435 5987435 5987435.0000
Parsifal 013802 1 28357832 28357832 28357832 28357832.0000
leavings 013803 1 39654943 39654943 39654943 39654943.0000
squeaking 013901 1 5987435 5987435 5987435 5987435.0000
contrasted 016001 1 5987435 5987435 5987435 5987435.0000
leftover 016201 1 5987435 5987435 5987435 5987435.0000
whiteners 016202 1 28357832 28357832 28357832 28357832.0000
erases 016301 1 5987435 5987435 5987435 5987435.0000
Punjab 016302 1 28357832 28357832 28357832 28357832.0000
Merritt 016303 1 39654943 39654943 39654943 39654943.0000
sweetish 018001 1 5987435 5987435 5987435 5987435.0000
dogging 018002 1 28357832 28357832 28357832 28357832.0000
scornfully 018003 1 39654943 39654943 39654943 39654943.0000
fetters 018012 1 28357832 28357832 28357832 28357832.0000
bivalves 018013 1 39654943 39654943 39654943 39654943.0000
skulking 018021 1 5987435 5987435 5987435 5987435.0000
flint 018022 1 28357832 28357832 28357832 28357832.0000
flopping 018023 1 39654943 39654943 39654943 39654943.0000
Judas 018032 1 28357832 28357832 28357832 28357832.0000
vacuuming 018033 1 39654943 39654943 39654943 39654943.0000
medical 018041 1 5987435 5987435 5987435 5987435.0000
bloodbath 018042 1 28357832 28357832 28357832 28357832.0000
subschema 018043 1 39654943 39654943 39654943 39654943.0000
interdependent 018051 1 5987435 5987435 5987435 5987435.0000
Graves 018052 1 28357832 28357832 28357832 28357832.0000
neonatal 018053 1 39654943 39654943 39654943 39654943.0000
sorters 018061 1 5987435 5987435 5987435 5987435.0000
epistle 018062 1 28357832 28357832 28357832 28357832.0000
Conley 018101 1 5987435 5987435 5987435 5987435.0000
lectured 018102 1 28357832 28357832 28357832 28357832.0000
Abraham 018103 1 39654943 39654943 39654943 39654943.0000
cage 018201 1 5987435 5987435 5987435 5987435.0000
hushes 018202 1 28357832 28357832 28357832 28357832.0000
Simla 018402 1 28357832 28357832 28357832 28357832.0000
reporters 018403 1 39654943 39654943 39654943 39654943.0000
coexist 018601 1 5987435 5987435 5987435 5987435.0000
Beebe 018602 1 28357832 28357832 28357832 28357832.0000
Taoism 018603 1 39654943 39654943 39654943 39654943.0000
Connally 018801 1 5987435 5987435 5987435 5987435.0000
fetched 018802 1 28357832 28357832 28357832 28357832.0000
checkpoints 018803 1 39654943 39654943 39654943 39654943.0000
gritty 018811 1 5987435 5987435 5987435 5987435.0000
firearm 018812 1 28357832 28357832 28357832 28357832.0000
minima 019101 1 5987435 5987435 5987435 5987435.0000
Selfridge 019102 1 28357832 28357832 28357832 28357832.0000
disable 019103 1 39654943 39654943 39654943 39654943.0000
witchcraft 019201 1 5987435 5987435 5987435 5987435.0000
betroth 030501 1 5987435 5987435 5987435 5987435.0000
Manhattanize 030502 1 28357832 28357832 28357832 28357832.0000
imprint 030503 1 39654943 39654943 39654943 39654943.0000
swelling 031901 1 5987435 5987435 5987435 5987435.0000
interrelationships 036001 1 5987435 5987435 5987435 5987435.0000
riser 036002 1 28357832 28357832 28357832 28357832.0000
bee 038001 1 5987435 5987435 5987435 5987435.0000
kanji 038002 1 28357832 28357832 28357832 28357832.0000
dental 038003 1 39654943 39654943 39654943 39654943.0000
railway 038011 1 5987435 5987435 5987435 5987435.0000
validate 038012 1 28357832 28357832 28357832 28357832.0000
normalizes 038013 1 39654943 39654943 39654943 39654943.0000
Kline 038101 1 5987435 5987435 5987435 5987435.0000
Anatole 038102 1 28357832 28357832 28357832 28357832.0000
partridges 038103 1 39654943 39654943 39654943 39654943.0000
recruited 038201 1 5987435 5987435 5987435 5987435.0000
dimensions 038202 1 28357832 28357832 28357832 28357832.0000
Chicana 038203 1 39654943 39654943 39654943 39654943.0000
select t3.companynr,fld3,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 group by companynr,fld3;
companynr fld3 sum(price)
512 boat 786542
512 capably 786542
512 cupboard 786542
512 decliner 786542
512 descendants 786542
512 dopers 786542
512 erases 786542
512 Micronesia 786542
512 Miles 786542
512 skies 786542
select t2.companynr,count(*),min(fld3),max(fld3),sum(price),avg(price) from t2,t3 where t3.companynr >= 30 and t3.companynr <= 58 and t3.t2nr = t2.fld1 and 1+1=2 group by t2.companynr;
companynr count(*) min(fld3) max(fld3) sum(price) avg(price)
00 1 Omaha Omaha 5987435 5987435.0000
36 1 dubbed dubbed 28357832 28357832.0000
37 83 Abraham Wotan 1908978016 22999735.1325
50 2 scribbled tapestry 68012775 34006387.5000
select t3.companynr+0,t3.t2nr,fld3,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 37 group by 1,t3.t2nr,fld3,fld3,fld3,fld3,fld3 order by fld1;
t3.companynr+0 t2nr fld3 sum(price)
37 1 Omaha 5987435
37 11401 breaking 5987435
37 11402 Romans 28357832
37 11403 intercepted 39654943
37 11501 bewilderingly 5987435
37 11701 astound 5987435
37 11702 admonishing 28357832
37 11703 sumac 39654943
37 12001 flanking 5987435
37 12003 combed 39654943
37 12301 Eulerian 5987435
37 12302 dubbed 28357832
37 12303 Kane 39654943
37 12501 annihilates 5987435
37 12602 Wotan 28357832
37 12603 snatching 39654943
37 12701 grazing 5987435
37 12702 Baird 28357832
37 12703 celery 39654943
37 13601 handgun 5987435
37 13602 foldout 28357832
37 13603 mystic 39654943
37 13801 intelligibility 5987435
37 13802 Augustine 28357832
37 13803 teethe 39654943
37 13901 scholastics 5987435
37 16001 audiology 5987435
37 16201 wallet 5987435
37 16202 parters 28357832
37 16301 eschew 5987435
37 16302 quitter 28357832
37 16303 neat 39654943
37 18001 jarring 5987435
37 18002 tinily 28357832
37 18003 balled 39654943
37 18012 impulsive 28357832
37 18013 starlet 39654943
37 18021 lawgiver 5987435
37 18022 stated 28357832
37 18023 readable 39654943
37 18032 testicle 28357832
37 18033 Parsifal 39654943
37 18041 Punjab 5987435
37 18042 Merritt 28357832
37 18043 Quixotism 39654943
37 18051 sureties 5987435
37 18052 puddings 28357832
37 18053 tapestry 39654943
37 18061 trimmings 5987435
37 18062 humility 28357832
37 18101 tragedies 5987435
37 18102 skulking 28357832
37 18103 flint 39654943
37 18201 relaxing 5987435
37 18202 offload 28357832
37 18402 suites 28357832
37 18403 lists 39654943
37 18601 vacuuming 5987435
37 18602 dentally 28357832
37 18603 humanness 39654943
37 18801 inch 5987435
37 18802 Weissmuller 28357832
37 18803 irresponsibly 39654943
37 18811 repetitions 5987435
37 18812 Antares 28357832
37 19101 ventilate 5987435
37 19102 pityingly 28357832
37 19103 interdependent 39654943
37 19201 Graves 5987435
37 30501 neonatal 5987435
37 30502 scribbled 28357832
37 30503 chafe 39654943
37 31901 realtor 5987435
37 36001 elite 5987435
37 36002 funereal 28357832
37 38001 Conley 5987435
37 38002 lectured 28357832
37 38003 Abraham 39654943
37 38011 groupings 5987435
37 38012 dissociate 28357832
37 38013 coexist 39654943
37 38101 rusting 5987435
37 38102 galling 28357832
37 38103 obliterates 39654943
37 38201 resumes 5987435
37 38202 analyzable 28357832
37 38203 terminator 39654943
select sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 and t3.t2nr = 38008 and t2.fld1 = 38008 or t2.fld1= t3.t2nr and t3.t2nr = 38008 and t2.fld1 = 38008;
sum(price)
234298
select t2.fld1,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 and t3.t2nr = 38008 and t2.fld1 = 38008 or t2.fld1 = t3.t2nr and t3.t2nr = 38008 and t2.fld1 = 38008 or t3.t2nr = t2.fld1 and t2.fld1 = 38008 group by t2.fld1;
fld1 sum(price)
038008 234298
explain select fld3 from t2 where 1>2 or 2>3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
explain select fld3 from t2 where fld1=fld1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
select companynr,fld1 from t2 HAVING fld1=250501 or fld1=250502;
companynr fld1
34 250501
34 250502
select companynr,fld1 from t2 WHERE fld1>=250501 HAVING fld1<=250502;
companynr fld1
34 250501
34 250502
select companynr,count(*) as count,sum(fld1) as sum from t2 group by companynr having count > 40 and sum/count >= 120000;
companynr count sum
00 82 10355753
29 95 14473298
34 70 17788966
37 588 83602098
41 52 12816335
select companynr from t2 group by companynr having count(*) > 40 and sum(fld1)/count(*) >= 120000 ;
companynr
00
29
34
37
41
select t2.companynr,companyname,count(*) from t2,t4 where t2.companynr=t4.companynr group by companyname having t2.companynr >= 40;
companynr companyname count(*)
68 company 10 12
50 company 11 11
40 company 5 37
41 company 6 52
53 company 7 4
58 company 8 23
65 company 9 10
select count(*) from t2;
count(*)
1199
select count(*) from t2 where fld1 < 098024;
count(*)
387
select min(fld1) from t2 where fld1>= 098024;
min(fld1)
98024
select max(fld1) from t2 where fld1>= 098024;
max(fld1)
1232609
select count(*) from t3 where price2=76234234;
count(*)
4181
select count(*) from t3 where companynr=512 and price2=76234234;
count(*)
4181
explain select min(fld1),max(fld1),count(*) from t2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
select min(fld1),max(fld1),count(*) from t2;
min(fld1) max(fld1) count(*)
0 1232609 1199
select min(t2nr),max(t2nr) from t3 where t2nr=2115 and price2=823742;
min(t2nr) max(t2nr)
2115 2115
select count(*),min(t2nr),max(t2nr) from t3 where name='spates' and companynr=78;
count(*) min(t2nr) max(t2nr)
4181 4 41804
select t2nr,count(*) from t3 where name='gems' group by t2nr limit 20;
t2nr count(*)
9 1
19 1
29 1
39 1
49 1
59 1
69 1
79 1
89 1
99 1
109 1
119 1
129 1
139 1
149 1
159 1
169 1
179 1
189 1
199 1
select max(t2nr) from t3 where price=983543950;
max(t2nr)
41807
select t1.period from t3 = t1 limit 1;
period
1001
select t1.period from t1 as t1 limit 1;
period
9410
select t1.period as "Nuvarande period" from t1 as t1 limit 1;
Nuvarande period
9410
select period as ok_period from t1 limit 1;
ok_period
9410
select period as ok_period from t1 group by ok_period limit 1;
ok_period
9410
select 1+1 as summa from t1 group by summa limit 1;
summa
2
select period as "Nuvarande period" from t1 group by "Nuvarande period" limit 1;
Nuvarande period
9410
show tables;
Tables_in_test
t1
t2
t3
t4
show tables from test like "s%";
Tables_in_test (s%)
show tables from test like "t?";
Tables_in_test (t?)
show full columns from t2;
Field Type Collation Null Key Default Extra Privileges Comment
auto int(11) NULL NO PRI NULL auto_increment #
fld1 int(6) unsigned zerofill NULL NO UNI 000000 #
companynr tinyint(2) unsigned zerofill NULL NO 00 #
fld3 char(30) latin1_swedish_ci NO MUL #
fld4 char(35) latin1_swedish_ci NO #
fld5 char(35) latin1_swedish_ci NO #
fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 'f%';
Field Type Collation Null Key Default Extra Privileges Comment
fld1 int(6) unsigned zerofill NULL NO UNI 000000 #
fld3 char(30) latin1_swedish_ci NO MUL #
fld4 char(35) latin1_swedish_ci NO #
fld5 char(35) latin1_swedish_ci NO #
fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
ver_nr int(11) NOT NULL default '0',
aufnr int(11) NOT NULL default '0',
username varchar(50) NOT NULL default '',
hdl_nr int(11) NOT NULL default '0',
eintrag date NOT NULL default '0000-00-00',
st_klasse varchar(40) NOT NULL default '',
st_wert varchar(40) NOT NULL default '',
st_zusatz varchar(40) NOT NULL default '',
st_bemerkung varchar(255) NOT NULL default '',
kunden_art varchar(40) NOT NULL default '',
mcbs_knr int(11) default NULL,
mcbs_aufnr int(11) NOT NULL default '0',
schufa_status char(1) default '?',
bemerkung text,
wirknetz text,
wf_igz int(11) NOT NULL default '0',
tarifcode varchar(80) default NULL,
recycle char(1) default NULL,
sim varchar(30) default NULL,
mcbs_tpl varchar(30) default NULL,
emp_nr int(11) NOT NULL default '0',
laufzeit int(11) default NULL,
hdl_name varchar(30) default NULL,
prov_hdl_nr int(11) NOT NULL default '0',
auto_wirknetz varchar(50) default NULL,
auto_billing varchar(50) default NULL,
touch timestamp NOT NULL,
kategorie varchar(50) default NULL,
kundentyp varchar(20) NOT NULL default '',
sammel_rech_msisdn varchar(30) NOT NULL default '',
p_nr varchar(9) NOT NULL default '',
suffix char(3) NOT NULL default '',
PRIMARY KEY (cont_nr),
KEY idx_aufnr(aufnr),
KEY idx_hdl_nr(hdl_nr),
KEY idx_st_klasse(st_klasse),
KEY ver_nr(ver_nr),
KEY eintrag_idx(eintrag),
KEY emp_nr_idx(emp_nr),
KEY wf_igz(wf_igz),
KEY touch(touch),
KEY hdl_tag(eintrag,hdl_nr),
KEY prov_hdl_nr(prov_hdl_nr),
KEY mcbs_aufnr(mcbs_aufnr),
KEY kundentyp(kundentyp),
KEY p_nr(p_nr,suffix)
) ENGINE=MyISAM;
INSERT INTO t1 VALUES (3359356,405,3359356,'Mustermann Musterfrau',52500,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1485525,2122316,'+','','N',1909160,'MobilComSuper92000D2',NULL,NULL,'MS9ND2',3,24,'MobilCom Shop Koeln',52500,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359357,468,3359357,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1503580,2139699,'+','','P',1909171,'MobilComSuper9D1T10SFreisprech(Akquise)',NULL,NULL,'MS9NS1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359358,407,3359358,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1501358,2137473,'N','','N',1909159,'MobilComSuper92000D2',NULL,NULL,'MS9ND2',325,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359359,468,3359359,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1507831,2143894,'+','','P',1909162,'MobilComSuper9D1T10SFreisprech(Akquise)',NULL,NULL,'MS9NS1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359360,0,0,'Mustermann Musterfrau',29674907,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1900169997,2414578,'+',NULL,'N',1909148,'',NULL,NULL,'RV99066_2',20,NULL,'POS',29674907,NULL,NULL,20010202105916,'Mobilfunk','','','97317481','007');
INSERT INTO t1 VALUES (3359361,406,3359361,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag storniert','','(7001-84):Storno, Kd. möchte nicht mehr','privat',NULL,0,'+','','P',1909150,'MobilComSuper92000D1(Akquise)',NULL,NULL,'MS9ND1',325,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359362,406,3359362,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1509984,2145874,'+','','P',1909154,'MobilComSuper92000D1(Akquise)',NULL,NULL,'MS9ND1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
SELECT ELT(FIELD(kundentyp,'PP','PPA','PG','PGA','FK','FKA','FP','FPA','K','KA','V','VA',''), 'Privat (Private Nutzung)','Privat (Private Nutzung) Sitz im Ausland','Privat (geschaeftliche Nutzung)','Privat (geschaeftliche Nutzung) Sitz im Ausland','Firma (Kapitalgesellschaft)','Firma (Kapitalgesellschaft) Sitz im Ausland','Firma (Personengesellschaft)','Firma (Personengesellschaft) Sitz im Ausland','oeff. rechtl. Koerperschaft','oeff. rechtl. Koerperschaft Sitz im Ausland','Eingetragener Verein','Eingetragener Verein Sitz im Ausland','Typ unbekannt') AS Kundentyp ,kategorie FROM t1 WHERE hdl_nr < 2000000 AND kategorie IN ('Prepaid','Mobilfunk') AND st_klasse = 'Workflow' GROUP BY kundentyp ORDER BY kategorie;
Kundentyp kategorie
Privat (Private Nutzung) Mobilfunk
Warnings:
Warning 1052 Column 'kundentyp' in group statement is ambiguous
drop table t1;
SHOW STATUS LIKE 'Compression';
Variable_name Value
Compression ON
......@@ -20,6 +20,10 @@ time_zone_transition_type
user
show tables;
Tables_in_test
connect(localhost,root,z,test2,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'root'@'localhost' (using password: YES)
connect(localhost,root,z,test,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'root'@'localhost' (using password: YES)
grant ALL on *.* to test@localhost identified by "gambling";
grant ALL on *.* to test@127.0.0.1 identified by "gambling";
show tables;
......@@ -43,6 +47,14 @@ time_zone_transition_type
user
show tables;
Tables_in_test
connect(localhost,test,,test2,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: NO)
connect(localhost,test,,"",MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: NO)
connect(localhost,test,zorro,test2,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: YES)
connect(localhost,test,zorro,test,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: YES)
update mysql.user set password=old_password("gambling2") where user=_binary"test";
flush privileges;
set password="";
......@@ -70,6 +82,14 @@ time_zone_transition_type
user
show tables;
Tables_in_test
connect(localhost,test,,test2,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: NO)
connect(localhost,test,,test,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: NO)
connect(localhost,test,zorro,test2,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: YES)
connect(localhost,test,zorro,test,MASTER_PORT,MYSQL_TEST_DIR/var/tmp/master.sock);
ERROR 28000: Access denied for user 'test'@'localhost' (using password: YES)
delete from mysql.user where user=_binary"test";
flush privileges;
create table t1 (id integer not null auto_increment primary key);
......
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
......@@ -344,6 +344,18 @@ mysqltest: At line 1: Wrong column number to replace_column in 'replace_column 1
mysqltest: At line 1: Invalid integer argument "10!"
mysqltest: At line 1: End of line junk detected: "!"
mysqltest: At line 1: Invalid integer argument "a"
mysqltest: At line 1: Syntax error in connect - expected '(' found 'mysqltest: At line 1: Missing connection host
mysqltest: At line 1: Missing connection host
mysqltest: At line 1: Missing connection user
mysqltest: At line 1: Missing connection user
mysqltest: At line 1: Missing connection password
mysqltest: At line 1: Missing connection db
mysqltest: At line 1: Could not open connection 'con2': Unknown database 'illegal_db'
mysqltest: At line 1: Illegal argument for port: 'illegal_port'
mysqltest: At line 1: Illegal option to connect: SMTP
mysqltest: In included file "./var/tmp/con.sql": At line 7: Connection limit exhausted - increase MAX_CONS in mysqltest.c
mysqltest: In included file "./var/tmp/con.sql": At line 3: connection 'test_con1' not found in connection pool
mysqltest: In included file "./var/tmp/con.sql": At line 2: Connection test_con1 already exists
Output from mysqltest-x.inc
Output from mysqltest-x.inc
Output from mysqltest-x.inc
......
......@@ -6,21 +6,33 @@ grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/Email=abstract.mysql.developer@mysql.com";
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/Email=abstract.mysql.developer@mysql.com" ISSUER "/C=SE/L=Uppsala/O=MySQL AB/CN=Abstract MySQL Developer/Email=abstract.mysql.developer@mysql.com";
flush privileges;
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
select * from t1;
f1
5
delete from t1;
ERROR 42000: DELETE command denied to user 'ssl_user1'@'localhost' for table 't1'
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
select * from t1;
f1
5
delete from t1;
ERROR 42000: DELETE command denied to user 'ssl_user2'@'localhost' for table 't1'
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
select * from t1;
f1
5
delete from t1;
ERROR 42000: DELETE command denied to user 'ssl_user3'@'localhost' for table 't1'
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
select * from t1;
f1
5
......
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
drop table if exists t1,t2,t3,t4;
CREATE TABLE t1 (
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
);
INSERT INTO t1 VALUES (9410,9412);
select period from t1;
period
9410
select * from t1;
Period Varor_period
9410 9412
select t1.* from t1;
Period Varor_period
9410 9412
CREATE TABLE t2 (
auto int not null auto_increment,
fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
fld3 char(30) DEFAULT '' NOT NULL,
fld4 char(35) DEFAULT '' NOT NULL,
fld5 char(35) DEFAULT '' NOT NULL,
fld6 char(4) DEFAULT '' NOT NULL,
UNIQUE fld1 (fld1),
KEY fld3 (fld3),
PRIMARY KEY (auto)
);
select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
fld3
imaginable
select fld3 from t2 where fld3 like "%cultivation" ;
fld3
cultivation
select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
fld3 companynr
concoct 58
druggists 58
engrossing 58
Eurydice 58
exclaimers 58
ferociousness 58
hopelessness 58
Huey 58
imaginable 58
judges 58
merging 58
ostrich 58
peering 58
Phelps 58
presumes 58
Ruth 58
sentences 58
Shylock 58
straggled 58
synergy 58
thanking 58
tying 58
unlocks 58
select fld3,companynr from t2 where companynr = 58 order by fld3;
fld3 companynr
concoct 58
druggists 58
engrossing 58
Eurydice 58
exclaimers 58
ferociousness 58
hopelessness 58
Huey 58
imaginable 58
judges 58
merging 58
ostrich 58
peering 58
Phelps 58
presumes 58
Ruth 58
sentences 58
Shylock 58
straggled 58
synergy 58
thanking 58
tying 58
unlocks 58
select fld3 from t2 order by fld3 desc limit 10;
fld3
youthfulness
yelped
Wotan
workers
Witt
witchcraft
Winsett
Willy
willed
wildcats
select fld3 from t2 order by fld3 desc limit 5;
fld3
youthfulness
yelped
Wotan
workers
Witt
select fld3 from t2 order by fld3 desc limit 5,5;
fld3
witchcraft
Winsett
Willy
willed
wildcats
select t2.fld3 from t2 where fld3 = 'honeysuckle';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'h%le';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
fld3
select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
fld3
explain select t2.fld3 from t2 where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select fld3 from t2 use index (fld1) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select fld3 from t2 use index (fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
ERROR 42000: Key column 'not_used' doesn't exist in table
explain select fld3 from t2 use index (not_used);
ERROR 42000: Key column 'not_used' doesn't exist in table
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
honoring
explain select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld3 fld3 30 NULL 2 Using where; Using index
select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
fld1 fld3
148504 Colombo
068305 Colombo
000000 nondecreasing
select fld1,fld3 from t2 where companynr = 37 and fld3 = 'appendixes';
fld1 fld3
232605 appendixes
1232605 appendixes
1232606 appendixes
1232607 appendixes
1232608 appendixes
1232609 appendixes
select fld1 from t2 where fld1=250501 or fld1="250502";
fld1
250501
250502
explain select fld1 from t2 where fld1=250501 or fld1="250502";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld1 fld1 4 NULL 2 Using where; Using index
select fld1 from t2 where fld1=250501 or fld1=250502 or fld1 >= 250505 and fld1 <= 250601 or fld1 between 250501 and 250502;
fld1
250501
250502
250505
250601
explain select fld1 from t2 where fld1=250501 or fld1=250502 or fld1 >= 250505 and fld1 <= 250601 or fld1 between 250501 and 250502;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld1 fld1 4 NULL 4 Using where; Using index
select fld1,fld3 from t2 where companynr = 37 and fld3 like 'f%';
fld1 fld3
218401 faithful
018007 fanatic
228311 fated
018017 featherweight
218022 feed
088303 feminine
058004 Fenton
038017 fetched
018054 fetters
208101 fiftieth
238007 filial
013606 fingerings
218008 finishers
038205 firearm
188505 fitting
202301 Fitzpatrick
238008 fixedly
012001 flanking
018103 flint
018104 flopping
188007 flurried
013602 foldout
226205 foothill
232102 forgivably
228306 forthcoming
186002 freakish
208113 freest
231315 freezes
036002 funereal
226209 furnishings
198006 furthermore
select fld3 from t2 where fld3 like "L%" and fld3 = "ok";
fld3
select fld3 from t2 where (fld3 like "C%" and fld3 = "Chantilly");
fld3
Chantilly
select fld1,fld3 from t2 where fld1 like "25050%";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
select fld1,fld3 from t2 where fld1 like "25050_";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
select distinct companynr from t2;
companynr
00
37
36
50
58
29
40
53
65
41
34
68
select distinct companynr from t2 order by companynr;
companynr
00
29
34
36
37
40
41
50
53
58
65
68
select distinct companynr from t2 order by companynr desc;
companynr
68
65
58
53
50
41
40
37
36
34
29
00
select distinct t2.fld3,period from t2,t1 where companynr=37 and fld3 like "O%";
fld3 period
obliterates 9410
offload 9410
opaquely 9410
organizer 9410
overestimating 9410
overlay 9410
select distinct fld3 from t2 where companynr = 34 order by fld3;
fld3
absentee
accessed
ahead
alphabetic
Asiaticizations
attitude
aye
bankruptcies
belays
Blythe
bomb
boulevard
bulldozes
cannot
caressing
charcoal
checksumming
chess
clubroom
colorful
cosy
creator
crying
Darius
diffusing
duality
Eiffel
Epiphany
Ernestine
explorers
exterminated
famine
forked
Gershwins
heaving
Hodges
Iraqis
Italianization
Lagos
landslide
libretto
Majorca
mastering
narrowed
occurred
offerers
Palestine
Peruvianizes
pharmaceutic
poisoning
population
Pygmalion
rats
realest
recording
regimented
retransmitting
reviver
rouses
scars
sicker
sleepwalk
stopped
sugars
translatable
uncles
unexpected
uprisings
versatility
vest
select distinct fld3 from t2 limit 10;
fld3
abates
abiding
Abraham
abrogating
absentee
abut
accessed
accruing
accumulating
accuracies
select distinct fld3 from t2 having fld3 like "A%" limit 10;
fld3
abates
abiding
Abraham
abrogating
absentee
abut
accessed
accruing
accumulating
accuracies
select distinct substring(fld3,1,3) from t2 where fld3 like "A%";
substring(fld3,1,3)
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
Adl
adm
Ado
ads
adv
aer
aff
afi
afl
afo
agi
ahe
aim
air
Ald
alg
ali
all
alp
alr
ama
ame
amm
ana
and
ane
Ang
ani
Ann
Ant
api
app
aqu
Ara
arc
Arm
arr
Art
Asi
ask
asp
ass
ast
att
aud
Aug
aut
ave
avo
awe
aye
Azt
select distinct substring(fld3,1,3) as a from t2 having a like "A%" order by a limit 10;
a
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
select distinct substring(fld3,1,3) from t2 where fld3 like "A%" limit 10;
substring(fld3,1,3)
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
select distinct substring(fld3,1,3) as a from t2 having a like "A%" limit 10;
a
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
create table t3 (
period int not null,
name char(32) not null,
companynr int not null,
price double(11,0),
price2 double(11,0),
key (period),
key (name)
);
create temporary table tmp engine = myisam select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
alter table t3 add t2nr int not null auto_increment primary key first;
drop table tmp;
SET SQL_BIG_TABLES=1;
select distinct concat(fld3," ",fld3) as namn from t2,t3 where t2.fld1=t3.t2nr order by namn limit 10;
namn
Abraham Abraham
abrogating abrogating
admonishing admonishing
Adolph Adolph
afield afield
aging aging
ammonium ammonium
analyzable analyzable
animals animals
animized animized
SET SQL_BIG_TABLES=0;
select distinct concat(fld3," ",fld3) from t2,t3 where t2.fld1=t3.t2nr order by fld3 limit 10;
concat(fld3," ",fld3)
Abraham Abraham
abrogating abrogating
admonishing admonishing
Adolph Adolph
afield afield
aging aging
ammonium ammonium
analyzable analyzable
animals animals
animized animized
select distinct fld5 from t2 limit 10;
fld5
neat
Steinberg
jarring
tinily
balled
persist
attainments
fanatic
measures
rightfulness
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
and 1
annoyers 1
Anthony 1
assayed 1
assurers 1
attendants 1
bedlam 1
bedpost 1
boasted 1
SET SQL_BIG_TABLES=1;
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
and 1
annoyers 1
Anthony 1
assayed 1
assurers 1
attendants 1
bedlam 1
bedpost 1
boasted 1
SET SQL_BIG_TABLES=0;
select distinct fld3,repeat("a",length(fld3)),count(*) from t2 group by companynr,fld3 limit 100,10;
fld3 repeat("a",length(fld3)) count(*)
circus aaaaaa 1
cited aaaaa 1
Colombo aaaaaaa 1
congresswoman aaaaaaaaaaaaa 1
contrition aaaaaaaaaa 1
corny aaaaa 1
cultivation aaaaaaaaaaa 1
definiteness aaaaaaaaaaaa 1
demultiplex aaaaaaaaaaa 1
disappointing aaaaaaaaaaaaa 1
select distinct companynr,rtrim(space(512+companynr)) from t3 order by 1,2;
companynr rtrim(space(512+companynr))
37
78
101
154
311
447
512
select distinct fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2nr order by fld3;
fld3
explain select t3.t2nr,fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2nr order by t3.t2nr,fld3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL fld1 NULL NULL NULL 1199 Using where; Using temporary; Using filesort
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.fld1 1 Using where; Using index
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL period NULL NULL NULL 41810 Using temporary; Using filesort
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 index period period 4 NULL 41810
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index period period 4 NULL 41810
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
9410
select period from t1 where period=1900;
period
select fld3,period from t1,t2 where fld1 = 011401 order by period;
fld3 period
breaking 9410
select fld3,period from t2,t3 where t2.fld1 = 011401 and t2.fld1=t3.t2nr and t3.period=1001;
fld3 period
breaking 1001
explain select fld3,period from t2,t3 where t2.fld1 = 011401 and t3.t2nr=t2.fld1 and 1001 = t3.period;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 const fld1 fld1 4 const 1
1 SIMPLE t3 const PRIMARY,period PRIMARY 4 const 1
select fld3,period from t2,t1 where companynr*10 = 37*10;
fld3 period
breaking 9410
Romans 9410
intercepted 9410
bewilderingly 9410
astound 9410
admonishing 9410
sumac 9410
flanking 9410
combed 9410
subjective 9410
scatterbrain 9410
Eulerian 9410
Kane 9410
overlay 9410
perturb 9410
goblins 9410
annihilates 9410
Wotan 9410
snatching 9410
concludes 9410
laterally 9410
yelped 9410
grazing 9410
Baird 9410
celery 9410
misunderstander 9410
handgun 9410
foldout 9410
mystic 9410
succumbed 9410
Nabisco 9410
fingerings 9410
aging 9410
afield 9410
ammonium 9410
boat 9410
intelligibility 9410
Augustine 9410
teethe 9410
dreaded 9410
scholastics 9410
audiology 9410
wallet 9410
parters 9410
eschew 9410
quitter 9410
neat 9410
Steinberg 9410
jarring 9410
tinily 9410
balled 9410
persist 9410
attainments 9410
fanatic 9410
measures 9410
rightfulness 9410
capably 9410
impulsive 9410
starlet 9410
terminators 9410
untying 9410
announces 9410
featherweight 9410
pessimist 9410
daughter 9410
decliner 9410
lawgiver 9410
stated 9410
readable 9410
attrition 9410
cascade 9410
motors 9410
interrogate 9410
pests 9410
stairway 9410
dopers 9410
testicle 9410
Parsifal 9410
leavings 9410
postulation 9410
squeaking 9410
contrasted 9410
leftover 9410
whiteners 9410
erases 9410
Punjab 9410
Merritt 9410
Quixotism 9410
sweetish 9410
dogging 9410
scornfully 9410
bellow 9410
bills 9410
cupboard 9410
sureties 9410
puddings 9410
fetters 9410
bivalves 9410
incurring 9410
Adolph 9410
pithed 9410
Miles 9410
trimmings 9410
tragedies 9410
skulking 9410
flint 9410
flopping 9410
relaxing 9410
offload 9410
suites 9410
lists 9410
animized 9410
multilayer 9410
standardizes 9410
Judas 9410
vacuuming 9410
dentally 9410
humanness 9410
inch 9410
Weissmuller 9410
irresponsibly 9410
luckily 9410
culled 9410
medical 9410
bloodbath 9410
subschema 9410
animals 9410
Micronesia 9410
repetitions 9410
Antares 9410
ventilate 9410
pityingly 9410
interdependent 9410
Graves 9410
neonatal 9410
chafe 9410
honoring 9410
realtor 9410
elite 9410
funereal 9410
abrogating 9410
sorters 9410
Conley 9410
lectured 9410
Abraham 9410
Hawaii 9410
cage 9410
hushes 9410
Simla 9410
reporters 9410
Dutchman 9410
descendants 9410
groupings 9410
dissociate 9410
coexist 9410
Beebe 9410
Taoism 9410
Connally 9410
fetched 9410
checkpoints 9410
rusting 9410
galling 9410
obliterates 9410
traitor 9410
resumes 9410
analyzable 9410
terminator 9410
gritty 9410
firearm 9410
minima 9410
Selfridge 9410
disable 9410
witchcraft 9410
betroth 9410
Manhattanize 9410
imprint 9410
peeked 9410
swelling 9410
interrelationships 9410
riser 9410
Gandhian 9410
peacock 9410
bee 9410
kanji 9410
dental 9410
scarf 9410
chasm 9410
insolence 9410
syndicate 9410
alike 9410
imperial 9410
convulsion 9410
railway 9410
validate 9410
normalizes 9410
comprehensive 9410
chewing 9410
denizen 9410
schemer 9410
chronicle 9410
Kline 9410
Anatole 9410
partridges 9410
brunch 9410
recruited 9410
dimensions 9410
Chicana 9410
announced 9410
praised 9410
employing 9410
linear 9410
quagmire 9410
western 9410
relishing 9410
serving 9410
scheduling 9410
lore 9410
eventful 9410
arteriole 9410
disentangle 9410
cured 9410
Fenton 9410
avoidable 9410
drains 9410
detectably 9410
husky 9410
impelling 9410
undoes 9410
evened 9410
squeezes 9410
destroyer 9410
rudeness 9410
beaner 9410
boorish 9410
Everhart 9410
encompass 9410
mushrooms 9410
Alison 9410
externally 9410
pellagra 9410
cult 9410
creek 9410
Huffman 9410
Majorca 9410
governing 9410
gadfly 9410
reassigned 9410
intentness 9410
craziness 9410
psychic 9410
squabbled 9410
burlesque 9410
capped 9410
extracted 9410
DiMaggio 9410
exclamation 9410
subdirectory 9410
Gothicism 9410
feminine 9410
metaphysically 9410
sanding 9410
Miltonism 9410
freakish 9410
index 9410
straight 9410
flurried 9410
denotative 9410
coming 9410
commencements 9410
gentleman 9410
gifted 9410
Shanghais 9410
sportswriting 9410
sloping 9410
navies 9410
leaflet 9410
shooter 9410
Joplin 9410
babies 9410
assails 9410
admiring 9410
swaying 9410
Goldstine 9410
fitting 9410
Norwalk 9410
analogy 9410
deludes 9410
cokes 9410
Clayton 9410
exhausts 9410
causality 9410
sating 9410
icon 9410
throttles 9410
communicants 9410
dehydrate 9410
priceless 9410
publicly 9410
incidentals 9410
commonplace 9410
mumbles 9410
furthermore 9410
cautioned 9410
parametrized 9410
registration 9410
sadly 9410
positioning 9410
babysitting 9410
eternal 9410
hoarder 9410
congregates 9410
rains 9410
workers 9410
sags 9410
unplug 9410
garage 9410
boulder 9410
specifics 9410
Teresa 9410
Winsett 9410
convenient 9410
buckboards 9410
amenities 9410
resplendent 9410
sews 9410
participated 9410
Simon 9410
certificates 9410
Fitzpatrick 9410
Evanston 9410
misted 9410
textures 9410
save 9410
count 9410
rightful 9410
chaperone 9410
Lizzy 9410
clenched 9410
effortlessly 9410
accessed 9410
beaters 9410
Hornblower 9410
vests 9410
indulgences 9410
infallibly 9410
unwilling 9410
excrete 9410
spools 9410
crunches 9410
overestimating 9410
ineffective 9410
humiliation 9410
sophomore 9410
star 9410
rifles 9410
dialysis 9410
arriving 9410
indulge 9410
clockers 9410
languages 9410
Antarctica 9410
percentage 9410
ceiling 9410
specification 9410
regimented 9410
ciphers 9410
pictures 9410
serpents 9410
allot 9410
realized 9410
mayoral 9410
opaquely 9410
hostess 9410
fiftieth 9410
incorrectly 9410
decomposition 9410
stranglings 9410
mixture 9410
electroencephalography 9410
similarities 9410
charges 9410
freest 9410
Greenberg 9410
tinting 9410
expelled 9410
warm 9410
smoothed 9410
deductions 9410
Romano 9410
bitterroot 9410
corset 9410
securing 9410
environing 9410
cute 9410
Crays 9410
heiress 9410
inform 9410
avenge 9410
universals 9410
Kinsey 9410
ravines 9410
bestseller 9410
equilibrium 9410
extents 9410
relatively 9410
pressure 9410
critiques 9410
befouled 9410
rightfully 9410
mechanizing 9410
Latinizes 9410
timesharing 9410
Aden 9410
embassies 9410
males 9410
shapelessly 9410
mastering 9410
Newtonian 9410
finishers 9410
abates 9410
teem 9410
kiting 9410
stodgy 9410
feed 9410
guitars 9410
airships 9410
store 9410
denounces 9410
Pyle 9410
Saxony 9410
serializations 9410
Peruvian 9410
taxonomically 9410
kingdom 9410
stint 9410
Sault 9410
faithful 9410
Ganymede 9410
tidiness 9410
gainful 9410
contrary 9410
Tipperary 9410
tropics 9410
theorizers 9410
renew 9410
already 9410
terminal 9410
Hegelian 9410
hypothesizer 9410
warningly 9410
journalizing 9410
nested 9410
Lars 9410
saplings 9410
foothill 9410
labeled 9410
imperiously 9410
reporters 9410
furnishings 9410
precipitable 9410
discounts 9410
excises 9410
Stalin 9410
despot 9410
ripeness 9410
Arabia 9410
unruly 9410
mournfulness 9410
boom 9410
slaughter 9410
Sabine 9410
handy 9410
rural 9410
organizer 9410
shipyard 9410
civics 9410
inaccuracy 9410
rules 9410
juveniles 9410
comprised 9410
investigations 9410
stabilizes 9410
seminaries 9410
Hunter 9410
sporty 9410
test 9410
weasels 9410
CERN 9410
tempering 9410
afore 9410
Galatean 9410
techniques 9410
error 9410
veranda 9410
severely 9410
Cassites 9410
forthcoming 9410
guides 9410
vanish 9410
lied 9410
sawtooth 9410
fated 9410
gradually 9410
widens 9410
preclude 9410
evenhandedly 9410
percentage 9410
disobedience 9410
humility 9410
gleaning 9410
petted 9410
bloater 9410
minion 9410
marginal 9410
apiary 9410
measures 9410
precaution 9410
repelled 9410
primary 9410
coverings 9410
Artemia 9410
navigate 9410
spatial 9410
Gurkha 9410
meanwhile 9410
Melinda 9410
Butterfield 9410
Aldrich 9410
previewing 9410
glut 9410
unaffected 9410
inmate 9410
mineral 9410
impending 9410
meditation 9410
ideas 9410
miniaturizes 9410
lewdly 9410
title 9410
youthfulness 9410
creak 9410
Chippewa 9410
clamored 9410
freezes 9410
forgivably 9410
reduce 9410
McGovern 9410
Nazis 9410
epistle 9410
socializes 9410
conceptions 9410
Kevin 9410
uncovering 9410
chews 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
raining 9410
infest 9410
compartment 9410
minting 9410
ducks 9410
roped 9410
waltz 9410
Lillian 9410
repressions 9410
chillingly 9410
noncritical 9410
lithograph 9410
spongers 9410
parenthood 9410
posed 9410
instruments 9410
filial 9410
fixedly 9410
relives 9410
Pandora 9410
watering 9410
ungrateful 9410
secures 9410
poison 9410
dusted 9410
encompasses 9410
presentation 9410
Kantian 9410
select fld3,period,price,price2 from t2,t3 where t2.fld1=t3.t2nr and period >= 1001 and period <= 1002 and t2.companynr = 37 order by fld3,period, price;
fld3 period price price2
admonishing 1002 28357832 8723648
analyzable 1002 28357832 8723648
annihilates 1001 5987435 234724
Antares 1002 28357832 8723648
astound 1001 5987435 234724
audiology 1001 5987435 234724
Augustine 1002 28357832 8723648
Baird 1002 28357832 8723648
bewilderingly 1001 5987435 234724
breaking 1001 5987435 234724
Conley 1001 5987435 234724
dentally 1002 28357832 8723648
dissociate 1002 28357832 8723648
elite 1001 5987435 234724
eschew 1001 5987435 234724
Eulerian 1001 5987435 234724
flanking 1001 5987435 234724
foldout 1002 28357832 8723648
funereal 1002 28357832 8723648
galling 1002 28357832 8723648
Graves 1001 5987435 234724
grazing 1001 5987435 234724
groupings 1001 5987435 234724
handgun 1001 5987435 234724
humility 1002 28357832 8723648
impulsive 1002 28357832 8723648
inch 1001 5987435 234724
intelligibility 1001 5987435 234724
jarring 1001 5987435 234724
lawgiver 1001 5987435 234724
lectured 1002 28357832 8723648
Merritt 1002 28357832 8723648
neonatal 1001 5987435 234724
offload 1002 28357832 8723648
parters 1002 28357832 8723648
pityingly 1002 28357832 8723648
puddings 1002 28357832 8723648
Punjab 1001 5987435 234724
quitter 1002 28357832 8723648
realtor 1001 5987435 234724
relaxing 1001 5987435 234724
repetitions 1001 5987435 234724
resumes 1001 5987435 234724
Romans 1002 28357832 8723648
rusting 1001 5987435 234724
scholastics 1001 5987435 234724
skulking 1002 28357832 8723648
stated 1002 28357832 8723648
suites 1002 28357832 8723648
sureties 1001 5987435 234724
testicle 1002 28357832 8723648
tinily 1002 28357832 8723648
tragedies 1001 5987435 234724
trimmings 1001 5987435 234724
vacuuming 1001 5987435 234724
ventilate 1001 5987435 234724
wallet 1001 5987435 234724
Weissmuller 1002 28357832 8723648
Wotan 1002 28357832 8723648
select t2.fld1,fld3,period,price,price2 from t2,t3 where t2.fld1>= 18201 and t2.fld1 <= 18811 and t2.fld1=t3.t2nr and period = 1001 and t2.companynr = 37;
fld1 fld3 period price price2
018201 relaxing 1001 5987435 234724
018601 vacuuming 1001 5987435 234724
018801 inch 1001 5987435 234724
018811 repetitions 1001 5987435 234724
create table t4 (
companynr tinyint(2) unsigned zerofill NOT NULL default '00',
companyname char(30) NOT NULL default '',
PRIMARY KEY (companynr),
UNIQUE KEY companyname(companyname)
) ENGINE=MyISAM MAX_ROWS=50 PACK_KEYS=1 COMMENT='companynames';
select STRAIGHT_JOIN t2.companynr,companyname from t4,t2 where t2.companynr=t4.companynr group by t2.companynr;
companynr companyname
00 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select SQL_SMALL_RESULT t2.companynr,companyname from t4,t2 where t2.companynr=t4.companynr group by t2.companynr;
companynr companyname
00 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select * from t1,t1 t12;
Period Varor_period Period Varor_period
9410 9412 9410 9412
select t2.fld1,t22.fld1 from t2,t2 t22 where t2.fld1 >= 250501 and t2.fld1 <= 250505 and t22.fld1 >= 250501 and t22.fld1 <= 250505;
fld1 fld1
250501 250501
250502 250501
250503 250501
250504 250501
250505 250501
250501 250502
250502 250502
250503 250502
250504 250502
250505 250502
250501 250503
250502 250503
250503 250503
250504 250503
250505 250503
250501 250504
250502 250504
250503 250504
250504 250504
250505 250504
250501 250505
250502 250505
250503 250505
250504 250505
250505 250505
insert into t2 (fld1, companynr) values (999999,99);
select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
companynr companyname
99 NULL
select count(*) from t2 left join t4 using (companynr) where t4.companynr is not null;
count(*)
1199
explain select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1 Using where; Not exists
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200 Using where; Not exists
select companynr,companyname from t2 left join t4 using (companynr) where companynr is null;
companynr companyname
select count(*) from t2 left join t4 using (companynr) where companynr is not null;
count(*)
1200
explain select companynr,companyname from t2 left join t4 using (companynr) where companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
delete from t2 where fld1=999999;
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 and t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 and companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0 or t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where ifnull(t2.companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr < 0 or companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where ifnull(companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
companynr companynr
37 36
41 40
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select t2.fld1,t2.companynr,fld3,period from t3,t2 where (t2.fld1 = 38208 or t2.fld1 = 38008) and t2.fld1=t3.t2nr and period>=1008 and period<=1009;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select t2.fld1,t2.companynr,fld3,period from t3,t2 where (t3.t2nr = 38208 or t3.t2nr = 38008) and t2.fld1=t3.t2nr and period>=1008 and period<=1009;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select period from t1 where (((period > 0) or period < 10000 or (period = 1900)) and (period=1900 and period <= 1901) or (period=1903 and (period=1903)) and period>=1902) or ((period=1904 or period=1905) or (period=1906 or period>1907)) or (period=1908 and period = 1909);
period
9410
select period from t1 where ((period > 0 and period < 1) or (((period > 0 and period < 100) and (period > 10)) or (period > 10)) or (period > 0 and (period > 5 or period > 6)));
period
9410
select a.fld1 from t2 as a,t2 b where ((a.fld1 = 250501 and a.fld1=b.fld1) or a.fld1=250502 or a.fld1=250503 or (a.fld1=250505 and a.fld1<=b.fld1 and b.fld1>=a.fld1)) and a.fld1=b.fld1;
fld1
250501
250502
250503
250505
select fld1 from t2 where fld1 in (250502,98005,98006,250503,250605,250606) and fld1 >=250502 and fld1 not in (250605,250606);
fld1
250502
250503
select fld1 from t2 where fld1 between 250502 and 250504;
fld1
250502
250503
250504
select fld3 from t2 where (((fld3 like "_%L%" ) or (fld3 like "%ok%")) and ( fld3 like "L%" or fld3 like "G%")) and fld3 like "L%" ;
fld3
label
labeled
labeled
landslide
laterally
leaflet
lewdly
Lillian
luckily
select count(*) from t1;
count(*)
1
select companynr,count(*),sum(fld1) from t2 group by companynr;
companynr count(*) sum(fld1)
00 82 10355753
29 95 14473298
34 70 17788966
36 215 22786296
37 588 83602098
40 37 6618386
41 52 12816335
50 11 1595438
53 4 793210
58 23 2254293
65 10 2284055
68 12 3097288
select companynr,count(*) from t2 group by companynr order by companynr desc limit 5;
companynr count(*)
68 12
65 10
58 23
53 4
50 11
select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
Warnings:
Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
29 95 abut wetness 14473298 152350.5053 8368.5480 70032594.9026
34 70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
select companynr,t2nr,count(price),sum(price),min(price),max(price),avg(price) from t3 where companynr = 37 group by companynr,t2nr limit 10;
companynr t2nr count(price) sum(price) min(price) max(price) avg(price)
37 1 1 5987435 5987435 5987435 5987435.0000
37 2 1 28357832 28357832 28357832 28357832.0000
37 3 1 39654943 39654943 39654943 39654943.0000
37 11 1 5987435 5987435 5987435 5987435.0000
37 12 1 28357832 28357832 28357832 28357832.0000
37 13 1 39654943 39654943 39654943 39654943.0000
37 21 1 5987435 5987435 5987435 5987435.0000
37 22 1 28357832 28357832 28357832 28357832.0000
37 23 1 39654943 39654943 39654943 39654943.0000
37 31 1 5987435 5987435 5987435 5987435.0000
select /*! SQL_SMALL_RESULT */ companynr,t2nr,count(price),sum(price),min(price),max(price),avg(price) from t3 where companynr = 37 group by companynr,t2nr limit 10;
companynr t2nr count(price) sum(price) min(price) max(price) avg(price)
37 1 1 5987435 5987435 5987435 5987435.0000
37 2 1 28357832 28357832 28357832 28357832.0000
37 3 1 39654943 39654943 39654943 39654943.0000
37 11 1 5987435 5987435 5987435 5987435.0000
37 12 1 28357832 28357832 28357832 28357832.0000
37 13 1 39654943 39654943 39654943 39654943.0000
37 21 1 5987435 5987435 5987435 5987435.0000
37 22 1 28357832 28357832 28357832 28357832.0000
37 23 1 39654943 39654943 39654943 39654943.0000
37 31 1 5987435 5987435 5987435 5987435.0000
select companynr,count(price),sum(price),min(price),max(price),avg(price) from t3 group by companynr ;
companynr count(price) sum(price) min(price) max(price) avg(price)
37 12543 309394878010 5987435 39654943 24666736.6667
78 8362 414611089292 726498 98439034 49582766.0000
101 4181 3489454238 834598 834598 834598.0000
154 4181 4112197254950 983543950 983543950 983543950.0000
311 4181 979599938 234298 234298 234298.0000
447 4181 9929180954 2374834 2374834 2374834.0000
512 4181 3288532102 786542 786542 786542.0000
select distinct mod(companynr,10) from t4 group by companynr;
mod(companynr,10)
0
9
4
6
7
1
3
8
5
select distinct 1 from t4 group by companynr;
1
1
select count(distinct fld1) from t2;
count(distinct fld1)
1199
select companynr,count(distinct fld1) from t2 group by companynr;
companynr count(distinct fld1)
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(*) from t2 group by companynr;
companynr count(*)
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct concat(fld1,repeat(65,1000))) from t2 group by companynr;
companynr count(distinct concat(fld1,repeat(65,1000)))
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct concat(fld1,repeat(65,200))) from t2 group by companynr;
companynr count(distinct concat(fld1,repeat(65,200)))
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct floor(fld1/100)) from t2 group by companynr;
companynr count(distinct floor(fld1/100))
00 47
29 35
34 14
36 69
37 108
40 16
41 11
50 9
53 1
58 1
65 1
68 1
select companynr,count(distinct concat(repeat(65,1000),floor(fld1/100))) from t2 group by companynr;
companynr count(distinct concat(repeat(65,1000),floor(fld1/100)))
00 47
29 35
34 14
36 69
37 108
40 16
41 11
50 9
53 1
58 1
65 1
68 1
select sum(fld1),fld3 from t2 where fld3="Romans" group by fld1 limit 10;
sum(fld1) fld3
11402 Romans
select name,count(*) from t3 where name='cloakroom' group by name;
name count(*)
cloakroom 4181
select name,count(*) from t3 where name='cloakroom' and price>10 group by name;
name count(*)
cloakroom 4181
select count(*) from t3 where name='cloakroom' and price2=823742;
count(*)
4181
select name,count(*) from t3 where name='cloakroom' and price2=823742 group by name;
name count(*)
cloakroom 4181
select name,count(*) from t3 where name >= "extramarital" and price <= 39654943 group by name;
name count(*)
extramarital 4181
gazer 4181
gems 4181
Iranizes 4181
spates 4181
tucked 4181
violinist 4181
select t2.fld3,count(*) from t2,t3 where t2.fld1=158402 and t3.name=t2.fld3 group by t3.name;
fld3 count(*)
spates 4181
select companynr|0,companyname from t4 group by 1;
companynr|0 companyname
0 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select t2.companynr,companyname,count(*) from t2,t4 where t2.companynr=t4.companynr group by t2.companynr order by companyname;
companynr companyname count(*)
29 company 1 95
68 company 10 12
50 company 11 11
34 company 2 70
36 company 3 215
37 company 4 588
40 company 5 37
41 company 6 52
53 company 7 4
58 company 8 23
65 company 9 10
00 Unknown 82
select t2.fld1,count(*) from t2,t3 where t2.fld1=158402 and t3.name=t2.fld3 group by t3.name;
fld1 count(*)
158402 4181
select sum(Period)/count(*) from t1;
sum(Period)/count(*)
9410.0000
select companynr,count(price) as "count",sum(price) as "sum" ,abs(sum(price)/count(price)-avg(price)) as "diff",(0+count(price))*companynr as func from t3 group by companynr;
companynr count sum diff func
37 12543 309394878010 0.0000 464091
78 8362 414611089292 0.0000 652236
101 4181 3489454238 0.0000 422281
154 4181 4112197254950 0.0000 643874
311 4181 979599938 0.0000 1300291
447 4181 9929180954 0.0000 1868907
512 4181 3288532102 0.0000 2140672
select companynr,sum(price)/count(price) as avg from t3 group by companynr having avg > 70000000 order by avg;
companynr avg
154 983543950.0000
select companynr,count(*) from t2 group by companynr order by 2 desc;
companynr count(*)
37 588
36 215
29 95
00 82
34 70
41 52
40 37
58 23
68 12
50 11
65 10
53 4
select companynr,count(*) from t2 where companynr > 40 group by companynr order by 2 desc;
companynr count(*)
41 52
58 23
68 12
50 11
65 10
53 4
select t2.fld4,t2.fld1,count(price),sum(price),min(price),max(price),avg(price) from t3,t2 where t3.companynr = 37 and t2.fld1 = t3.t2nr group by fld1,t2.fld4;
fld4 fld1 count(price) sum(price) min(price) max(price) avg(price)
teethe 000001 1 5987435 5987435 5987435 5987435.0000
dreaded 011401 1 5987435 5987435 5987435 5987435.0000
scholastics 011402 1 28357832 28357832 28357832 28357832.0000
audiology 011403 1 39654943 39654943 39654943 39654943.0000
wallet 011501 1 5987435 5987435 5987435 5987435.0000
parters 011701 1 5987435 5987435 5987435 5987435.0000
eschew 011702 1 28357832 28357832 28357832 28357832.0000
quitter 011703 1 39654943 39654943 39654943 39654943.0000
neat 012001 1 5987435 5987435 5987435 5987435.0000
Steinberg 012003 1 39654943 39654943 39654943 39654943.0000
balled 012301 1 5987435 5987435 5987435 5987435.0000
persist 012302 1 28357832 28357832 28357832 28357832.0000
attainments 012303 1 39654943 39654943 39654943 39654943.0000
capably 012501 1 5987435 5987435 5987435 5987435.0000
impulsive 012602 1 28357832 28357832 28357832 28357832.0000
starlet 012603 1 39654943 39654943 39654943 39654943.0000
featherweight 012701 1 5987435 5987435 5987435 5987435.0000
pessimist 012702 1 28357832 28357832 28357832 28357832.0000
daughter 012703 1 39654943 39654943 39654943 39654943.0000
lawgiver 013601 1 5987435 5987435 5987435 5987435.0000
stated 013602 1 28357832 28357832 28357832 28357832.0000
readable 013603 1 39654943 39654943 39654943 39654943.0000
testicle 013801 1 5987435 5987435 5987435 5987435.0000
Parsifal 013802 1 28357832 28357832 28357832 28357832.0000
leavings 013803 1 39654943 39654943 39654943 39654943.0000
squeaking 013901 1 5987435 5987435 5987435 5987435.0000
contrasted 016001 1 5987435 5987435 5987435 5987435.0000
leftover 016201 1 5987435 5987435 5987435 5987435.0000
whiteners 016202 1 28357832 28357832 28357832 28357832.0000
erases 016301 1 5987435 5987435 5987435 5987435.0000
Punjab 016302 1 28357832 28357832 28357832 28357832.0000
Merritt 016303 1 39654943 39654943 39654943 39654943.0000
sweetish 018001 1 5987435 5987435 5987435 5987435.0000
dogging 018002 1 28357832 28357832 28357832 28357832.0000
scornfully 018003 1 39654943 39654943 39654943 39654943.0000
fetters 018012 1 28357832 28357832 28357832 28357832.0000
bivalves 018013 1 39654943 39654943 39654943 39654943.0000
skulking 018021 1 5987435 5987435 5987435 5987435.0000
flint 018022 1 28357832 28357832 28357832 28357832.0000
flopping 018023 1 39654943 39654943 39654943 39654943.0000
Judas 018032 1 28357832 28357832 28357832 28357832.0000
vacuuming 018033 1 39654943 39654943 39654943 39654943.0000
medical 018041 1 5987435 5987435 5987435 5987435.0000
bloodbath 018042 1 28357832 28357832 28357832 28357832.0000
subschema 018043 1 39654943 39654943 39654943 39654943.0000
interdependent 018051 1 5987435 5987435 5987435 5987435.0000
Graves 018052 1 28357832 28357832 28357832 28357832.0000
neonatal 018053 1 39654943 39654943 39654943 39654943.0000
sorters 018061 1 5987435 5987435 5987435 5987435.0000
epistle 018062 1 28357832 28357832 28357832 28357832.0000
Conley 018101 1 5987435 5987435 5987435 5987435.0000
lectured 018102 1 28357832 28357832 28357832 28357832.0000
Abraham 018103 1 39654943 39654943 39654943 39654943.0000
cage 018201 1 5987435 5987435 5987435 5987435.0000
hushes 018202 1 28357832 28357832 28357832 28357832.0000
Simla 018402 1 28357832 28357832 28357832 28357832.0000
reporters 018403 1 39654943 39654943 39654943 39654943.0000
coexist 018601 1 5987435 5987435 5987435 5987435.0000
Beebe 018602 1 28357832 28357832 28357832 28357832.0000
Taoism 018603 1 39654943 39654943 39654943 39654943.0000
Connally 018801 1 5987435 5987435 5987435 5987435.0000
fetched 018802 1 28357832 28357832 28357832 28357832.0000
checkpoints 018803 1 39654943 39654943 39654943 39654943.0000
gritty 018811 1 5987435 5987435 5987435 5987435.0000
firearm 018812 1 28357832 28357832 28357832 28357832.0000
minima 019101 1 5987435 5987435 5987435 5987435.0000
Selfridge 019102 1 28357832 28357832 28357832 28357832.0000
disable 019103 1 39654943 39654943 39654943 39654943.0000
witchcraft 019201 1 5987435 5987435 5987435 5987435.0000
betroth 030501 1 5987435 5987435 5987435 5987435.0000
Manhattanize 030502 1 28357832 28357832 28357832 28357832.0000
imprint 030503 1 39654943 39654943 39654943 39654943.0000
swelling 031901 1 5987435 5987435 5987435 5987435.0000
interrelationships 036001 1 5987435 5987435 5987435 5987435.0000
riser 036002 1 28357832 28357832 28357832 28357832.0000
bee 038001 1 5987435 5987435 5987435 5987435.0000
kanji 038002 1 28357832 28357832 28357832 28357832.0000
dental 038003 1 39654943 39654943 39654943 39654943.0000
railway 038011 1 5987435 5987435 5987435 5987435.0000
validate 038012 1 28357832 28357832 28357832 28357832.0000
normalizes 038013 1 39654943 39654943 39654943 39654943.0000
Kline 038101 1 5987435 5987435 5987435 5987435.0000
Anatole 038102 1 28357832 28357832 28357832 28357832.0000
partridges 038103 1 39654943 39654943 39654943 39654943.0000
recruited 038201 1 5987435 5987435 5987435 5987435.0000
dimensions 038202 1 28357832 28357832 28357832 28357832.0000
Chicana 038203 1 39654943 39654943 39654943 39654943.0000
select t3.companynr,fld3,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 group by companynr,fld3;
companynr fld3 sum(price)
512 boat 786542
512 capably 786542
512 cupboard 786542
512 decliner 786542
512 descendants 786542
512 dopers 786542
512 erases 786542
512 Micronesia 786542
512 Miles 786542
512 skies 786542
select t2.companynr,count(*),min(fld3),max(fld3),sum(price),avg(price) from t2,t3 where t3.companynr >= 30 and t3.companynr <= 58 and t3.t2nr = t2.fld1 and 1+1=2 group by t2.companynr;
companynr count(*) min(fld3) max(fld3) sum(price) avg(price)
00 1 Omaha Omaha 5987435 5987435.0000
36 1 dubbed dubbed 28357832 28357832.0000
37 83 Abraham Wotan 1908978016 22999735.1325
50 2 scribbled tapestry 68012775 34006387.5000
select t3.companynr+0,t3.t2nr,fld3,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 37 group by 1,t3.t2nr,fld3,fld3,fld3,fld3,fld3 order by fld1;
t3.companynr+0 t2nr fld3 sum(price)
37 1 Omaha 5987435
37 11401 breaking 5987435
37 11402 Romans 28357832
37 11403 intercepted 39654943
37 11501 bewilderingly 5987435
37 11701 astound 5987435
37 11702 admonishing 28357832
37 11703 sumac 39654943
37 12001 flanking 5987435
37 12003 combed 39654943
37 12301 Eulerian 5987435
37 12302 dubbed 28357832
37 12303 Kane 39654943
37 12501 annihilates 5987435
37 12602 Wotan 28357832
37 12603 snatching 39654943
37 12701 grazing 5987435
37 12702 Baird 28357832
37 12703 celery 39654943
37 13601 handgun 5987435
37 13602 foldout 28357832
37 13603 mystic 39654943
37 13801 intelligibility 5987435
37 13802 Augustine 28357832
37 13803 teethe 39654943
37 13901 scholastics 5987435
37 16001 audiology 5987435
37 16201 wallet 5987435
37 16202 parters 28357832
37 16301 eschew 5987435
37 16302 quitter 28357832
37 16303 neat 39654943
37 18001 jarring 5987435
37 18002 tinily 28357832
37 18003 balled 39654943
37 18012 impulsive 28357832
37 18013 starlet 39654943
37 18021 lawgiver 5987435
37 18022 stated 28357832
37 18023 readable 39654943
37 18032 testicle 28357832
37 18033 Parsifal 39654943
37 18041 Punjab 5987435
37 18042 Merritt 28357832
37 18043 Quixotism 39654943
37 18051 sureties 5987435
37 18052 puddings 28357832
37 18053 tapestry 39654943
37 18061 trimmings 5987435
37 18062 humility 28357832
37 18101 tragedies 5987435
37 18102 skulking 28357832
37 18103 flint 39654943
37 18201 relaxing 5987435
37 18202 offload 28357832
37 18402 suites 28357832
37 18403 lists 39654943
37 18601 vacuuming 5987435
37 18602 dentally 28357832
37 18603 humanness 39654943
37 18801 inch 5987435
37 18802 Weissmuller 28357832
37 18803 irresponsibly 39654943
37 18811 repetitions 5987435
37 18812 Antares 28357832
37 19101 ventilate 5987435
37 19102 pityingly 28357832
37 19103 interdependent 39654943
37 19201 Graves 5987435
37 30501 neonatal 5987435
37 30502 scribbled 28357832
37 30503 chafe 39654943
37 31901 realtor 5987435
37 36001 elite 5987435
37 36002 funereal 28357832
37 38001 Conley 5987435
37 38002 lectured 28357832
37 38003 Abraham 39654943
37 38011 groupings 5987435
37 38012 dissociate 28357832
37 38013 coexist 39654943
37 38101 rusting 5987435
37 38102 galling 28357832
37 38103 obliterates 39654943
37 38201 resumes 5987435
37 38202 analyzable 28357832
37 38203 terminator 39654943
select sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 and t3.t2nr = 38008 and t2.fld1 = 38008 or t2.fld1= t3.t2nr and t3.t2nr = 38008 and t2.fld1 = 38008;
sum(price)
234298
select t2.fld1,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 and t3.t2nr = 38008 and t2.fld1 = 38008 or t2.fld1 = t3.t2nr and t3.t2nr = 38008 and t2.fld1 = 38008 or t3.t2nr = t2.fld1 and t2.fld1 = 38008 group by t2.fld1;
fld1 sum(price)
038008 234298
explain select fld3 from t2 where 1>2 or 2>3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
explain select fld3 from t2 where fld1=fld1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
select companynr,fld1 from t2 HAVING fld1=250501 or fld1=250502;
companynr fld1
34 250501
34 250502
select companynr,fld1 from t2 WHERE fld1>=250501 HAVING fld1<=250502;
companynr fld1
34 250501
34 250502
select companynr,count(*) as count,sum(fld1) as sum from t2 group by companynr having count > 40 and sum/count >= 120000;
companynr count sum
00 82 10355753
29 95 14473298
34 70 17788966
37 588 83602098
41 52 12816335
select companynr from t2 group by companynr having count(*) > 40 and sum(fld1)/count(*) >= 120000 ;
companynr
00
29
34
37
41
select t2.companynr,companyname,count(*) from t2,t4 where t2.companynr=t4.companynr group by companyname having t2.companynr >= 40;
companynr companyname count(*)
68 company 10 12
50 company 11 11
40 company 5 37
41 company 6 52
53 company 7 4
58 company 8 23
65 company 9 10
select count(*) from t2;
count(*)
1199
select count(*) from t2 where fld1 < 098024;
count(*)
387
select min(fld1) from t2 where fld1>= 098024;
min(fld1)
98024
select max(fld1) from t2 where fld1>= 098024;
max(fld1)
1232609
select count(*) from t3 where price2=76234234;
count(*)
4181
select count(*) from t3 where companynr=512 and price2=76234234;
count(*)
4181
explain select min(fld1),max(fld1),count(*) from t2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
select min(fld1),max(fld1),count(*) from t2;
min(fld1) max(fld1) count(*)
0 1232609 1199
select min(t2nr),max(t2nr) from t3 where t2nr=2115 and price2=823742;
min(t2nr) max(t2nr)
2115 2115
select count(*),min(t2nr),max(t2nr) from t3 where name='spates' and companynr=78;
count(*) min(t2nr) max(t2nr)
4181 4 41804
select t2nr,count(*) from t3 where name='gems' group by t2nr limit 20;
t2nr count(*)
9 1
19 1
29 1
39 1
49 1
59 1
69 1
79 1
89 1
99 1
109 1
119 1
129 1
139 1
149 1
159 1
169 1
179 1
189 1
199 1
select max(t2nr) from t3 where price=983543950;
max(t2nr)
41807
select t1.period from t3 = t1 limit 1;
period
1001
select t1.period from t1 as t1 limit 1;
period
9410
select t1.period as "Nuvarande period" from t1 as t1 limit 1;
Nuvarande period
9410
select period as ok_period from t1 limit 1;
ok_period
9410
select period as ok_period from t1 group by ok_period limit 1;
ok_period
9410
select 1+1 as summa from t1 group by summa limit 1;
summa
2
select period as "Nuvarande period" from t1 group by "Nuvarande period" limit 1;
Nuvarande period
9410
show tables;
Tables_in_test
t1
t2
t3
t4
show tables from test like "s%";
Tables_in_test (s%)
show tables from test like "t?";
Tables_in_test (t?)
show full columns from t2;
Field Type Collation Null Key Default Extra Privileges Comment
auto int(11) NULL NO PRI NULL auto_increment #
fld1 int(6) unsigned zerofill NULL NO UNI 000000 #
companynr tinyint(2) unsigned zerofill NULL NO 00 #
fld3 char(30) latin1_swedish_ci NO MUL #
fld4 char(35) latin1_swedish_ci NO #
fld5 char(35) latin1_swedish_ci NO #
fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 'f%';
Field Type Collation Null Key Default Extra Privileges Comment
fld1 int(6) unsigned zerofill NULL NO UNI 000000 #
fld3 char(30) latin1_swedish_ci NO MUL #
fld4 char(35) latin1_swedish_ci NO #
fld5 char(35) latin1_swedish_ci NO #
fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
ver_nr int(11) NOT NULL default '0',
aufnr int(11) NOT NULL default '0',
username varchar(50) NOT NULL default '',
hdl_nr int(11) NOT NULL default '0',
eintrag date NOT NULL default '0000-00-00',
st_klasse varchar(40) NOT NULL default '',
st_wert varchar(40) NOT NULL default '',
st_zusatz varchar(40) NOT NULL default '',
st_bemerkung varchar(255) NOT NULL default '',
kunden_art varchar(40) NOT NULL default '',
mcbs_knr int(11) default NULL,
mcbs_aufnr int(11) NOT NULL default '0',
schufa_status char(1) default '?',
bemerkung text,
wirknetz text,
wf_igz int(11) NOT NULL default '0',
tarifcode varchar(80) default NULL,
recycle char(1) default NULL,
sim varchar(30) default NULL,
mcbs_tpl varchar(30) default NULL,
emp_nr int(11) NOT NULL default '0',
laufzeit int(11) default NULL,
hdl_name varchar(30) default NULL,
prov_hdl_nr int(11) NOT NULL default '0',
auto_wirknetz varchar(50) default NULL,
auto_billing varchar(50) default NULL,
touch timestamp NOT NULL,
kategorie varchar(50) default NULL,
kundentyp varchar(20) NOT NULL default '',
sammel_rech_msisdn varchar(30) NOT NULL default '',
p_nr varchar(9) NOT NULL default '',
suffix char(3) NOT NULL default '',
PRIMARY KEY (cont_nr),
KEY idx_aufnr(aufnr),
KEY idx_hdl_nr(hdl_nr),
KEY idx_st_klasse(st_klasse),
KEY ver_nr(ver_nr),
KEY eintrag_idx(eintrag),
KEY emp_nr_idx(emp_nr),
KEY wf_igz(wf_igz),
KEY touch(touch),
KEY hdl_tag(eintrag,hdl_nr),
KEY prov_hdl_nr(prov_hdl_nr),
KEY mcbs_aufnr(mcbs_aufnr),
KEY kundentyp(kundentyp),
KEY p_nr(p_nr,suffix)
) ENGINE=MyISAM;
INSERT INTO t1 VALUES (3359356,405,3359356,'Mustermann Musterfrau',52500,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1485525,2122316,'+','','N',1909160,'MobilComSuper92000D2',NULL,NULL,'MS9ND2',3,24,'MobilCom Shop Koeln',52500,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359357,468,3359357,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1503580,2139699,'+','','P',1909171,'MobilComSuper9D1T10SFreisprech(Akquise)',NULL,NULL,'MS9NS1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359358,407,3359358,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1501358,2137473,'N','','N',1909159,'MobilComSuper92000D2',NULL,NULL,'MS9ND2',325,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359359,468,3359359,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1507831,2143894,'+','','P',1909162,'MobilComSuper9D1T10SFreisprech(Akquise)',NULL,NULL,'MS9NS1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359360,0,0,'Mustermann Musterfrau',29674907,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1900169997,2414578,'+',NULL,'N',1909148,'',NULL,NULL,'RV99066_2',20,NULL,'POS',29674907,NULL,NULL,20010202105916,'Mobilfunk','','','97317481','007');
INSERT INTO t1 VALUES (3359361,406,3359361,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag storniert','','(7001-84):Storno, Kd. möchte nicht mehr','privat',NULL,0,'+','','P',1909150,'MobilComSuper92000D1(Akquise)',NULL,NULL,'MS9ND1',325,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359362,406,3359362,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1509984,2145874,'+','','P',1909154,'MobilComSuper92000D1(Akquise)',NULL,NULL,'MS9ND1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
SELECT ELT(FIELD(kundentyp,'PP','PPA','PG','PGA','FK','FKA','FP','FPA','K','KA','V','VA',''), 'Privat (Private Nutzung)','Privat (Private Nutzung) Sitz im Ausland','Privat (geschaeftliche Nutzung)','Privat (geschaeftliche Nutzung) Sitz im Ausland','Firma (Kapitalgesellschaft)','Firma (Kapitalgesellschaft) Sitz im Ausland','Firma (Personengesellschaft)','Firma (Personengesellschaft) Sitz im Ausland','oeff. rechtl. Koerperschaft','oeff. rechtl. Koerperschaft Sitz im Ausland','Eingetragener Verein','Eingetragener Verein Sitz im Ausland','Typ unbekannt') AS Kundentyp ,kategorie FROM t1 WHERE hdl_nr < 2000000 AND kategorie IN ('Prepaid','Mobilfunk') AND st_klasse = 'Workflow' GROUP BY kundentyp ORDER BY kategorie;
Kundentyp kategorie
Privat (Private Nutzung) Mobilfunk
Warnings:
Warning 1052 Column 'kundentyp' in group statement is ambiguous
drop table t1;
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
SHOW STATUS LIKE 'Compression';
Variable_name Value
Compression ON
drop table if exists t1,t2,t3,t4;
CREATE TABLE t1 (
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
);
INSERT INTO t1 VALUES (9410,9412);
select period from t1;
period
9410
select * from t1;
Period Varor_period
9410 9412
select t1.* from t1;
Period Varor_period
9410 9412
CREATE TABLE t2 (
auto int not null auto_increment,
fld1 int(6) unsigned zerofill DEFAULT '000000' NOT NULL,
companynr tinyint(2) unsigned zerofill DEFAULT '00' NOT NULL,
fld3 char(30) DEFAULT '' NOT NULL,
fld4 char(35) DEFAULT '' NOT NULL,
fld5 char(35) DEFAULT '' NOT NULL,
fld6 char(4) DEFAULT '' NOT NULL,
UNIQUE fld1 (fld1),
KEY fld3 (fld3),
PRIMARY KEY (auto)
);
select t2.fld3 from t2 where companynr = 58 and fld3 like "%imaginable%";
fld3
imaginable
select fld3 from t2 where fld3 like "%cultivation" ;
fld3
cultivation
select t2.fld3,companynr from t2 where companynr = 57+1 order by fld3;
fld3 companynr
concoct 58
druggists 58
engrossing 58
Eurydice 58
exclaimers 58
ferociousness 58
hopelessness 58
Huey 58
imaginable 58
judges 58
merging 58
ostrich 58
peering 58
Phelps 58
presumes 58
Ruth 58
sentences 58
Shylock 58
straggled 58
synergy 58
thanking 58
tying 58
unlocks 58
select fld3,companynr from t2 where companynr = 58 order by fld3;
fld3 companynr
concoct 58
druggists 58
engrossing 58
Eurydice 58
exclaimers 58
ferociousness 58
hopelessness 58
Huey 58
imaginable 58
judges 58
merging 58
ostrich 58
peering 58
Phelps 58
presumes 58
Ruth 58
sentences 58
Shylock 58
straggled 58
synergy 58
thanking 58
tying 58
unlocks 58
select fld3 from t2 order by fld3 desc limit 10;
fld3
youthfulness
yelped
Wotan
workers
Witt
witchcraft
Winsett
Willy
willed
wildcats
select fld3 from t2 order by fld3 desc limit 5;
fld3
youthfulness
yelped
Wotan
workers
Witt
select fld3 from t2 order by fld3 desc limit 5,5;
fld3
witchcraft
Winsett
Willy
willed
wildcats
select t2.fld3 from t2 where fld3 = 'honeysuckle';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'hon_ysuckl_';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle%';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'h%le';
fld3
honeysuckle
select t2.fld3 from t2 where fld3 LIKE 'honeysuckle_';
fld3
select t2.fld3 from t2 where fld3 LIKE 'don_t_find_me_please%';
fld3
explain select t2.fld3 from t2 where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select fld3 from t2 use index (fld1) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select fld3 from t2 use index (fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 use index (fld1,fld3) where fld3 = 'honeysuckle';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref fld3 fld3 30 const 1 Using where; Using index
explain select fld3 from t2 ignore index (fld3,not_used);
ERROR 42000: Key column 'not_used' doesn't exist in table
explain select fld3 from t2 use index (not_used);
ERROR 42000: Key column 'not_used' doesn't exist in table
select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
fld3
honeysuckle
honoring
explain select t2.fld3 from t2 where fld3 >= 'honeysuckle' and fld3 <= 'honoring' order by fld3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld3 fld3 30 NULL 2 Using where; Using index
select fld1,fld3 from t2 where fld3="Colombo" or fld3 = "nondecreasing" order by fld3;
fld1 fld3
148504 Colombo
068305 Colombo
000000 nondecreasing
select fld1,fld3 from t2 where companynr = 37 and fld3 = 'appendixes';
fld1 fld3
232605 appendixes
1232605 appendixes
1232606 appendixes
1232607 appendixes
1232608 appendixes
1232609 appendixes
select fld1 from t2 where fld1=250501 or fld1="250502";
fld1
250501
250502
explain select fld1 from t2 where fld1=250501 or fld1="250502";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld1 fld1 4 NULL 2 Using where; Using index
select fld1 from t2 where fld1=250501 or fld1=250502 or fld1 >= 250505 and fld1 <= 250601 or fld1 between 250501 and 250502;
fld1
250501
250502
250505
250601
explain select fld1 from t2 where fld1=250501 or fld1=250502 or fld1 >= 250505 and fld1 <= 250601 or fld1 between 250501 and 250502;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range fld1 fld1 4 NULL 4 Using where; Using index
select fld1,fld3 from t2 where companynr = 37 and fld3 like 'f%';
fld1 fld3
218401 faithful
018007 fanatic
228311 fated
018017 featherweight
218022 feed
088303 feminine
058004 Fenton
038017 fetched
018054 fetters
208101 fiftieth
238007 filial
013606 fingerings
218008 finishers
038205 firearm
188505 fitting
202301 Fitzpatrick
238008 fixedly
012001 flanking
018103 flint
018104 flopping
188007 flurried
013602 foldout
226205 foothill
232102 forgivably
228306 forthcoming
186002 freakish
208113 freest
231315 freezes
036002 funereal
226209 furnishings
198006 furthermore
select fld3 from t2 where fld3 like "L%" and fld3 = "ok";
fld3
select fld3 from t2 where (fld3 like "C%" and fld3 = "Chantilly");
fld3
Chantilly
select fld1,fld3 from t2 where fld1 like "25050%";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
select fld1,fld3 from t2 where fld1 like "25050_";
fld1 fld3
250501 poisoning
250502 Iraqis
250503 heaving
250504 population
250505 bomb
select distinct companynr from t2;
companynr
00
37
36
50
58
29
40
53
65
41
34
68
select distinct companynr from t2 order by companynr;
companynr
00
29
34
36
37
40
41
50
53
58
65
68
select distinct companynr from t2 order by companynr desc;
companynr
68
65
58
53
50
41
40
37
36
34
29
00
select distinct t2.fld3,period from t2,t1 where companynr=37 and fld3 like "O%";
fld3 period
obliterates 9410
offload 9410
opaquely 9410
organizer 9410
overestimating 9410
overlay 9410
select distinct fld3 from t2 where companynr = 34 order by fld3;
fld3
absentee
accessed
ahead
alphabetic
Asiaticizations
attitude
aye
bankruptcies
belays
Blythe
bomb
boulevard
bulldozes
cannot
caressing
charcoal
checksumming
chess
clubroom
colorful
cosy
creator
crying
Darius
diffusing
duality
Eiffel
Epiphany
Ernestine
explorers
exterminated
famine
forked
Gershwins
heaving
Hodges
Iraqis
Italianization
Lagos
landslide
libretto
Majorca
mastering
narrowed
occurred
offerers
Palestine
Peruvianizes
pharmaceutic
poisoning
population
Pygmalion
rats
realest
recording
regimented
retransmitting
reviver
rouses
scars
sicker
sleepwalk
stopped
sugars
translatable
uncles
unexpected
uprisings
versatility
vest
select distinct fld3 from t2 limit 10;
fld3
abates
abiding
Abraham
abrogating
absentee
abut
accessed
accruing
accumulating
accuracies
select distinct fld3 from t2 having fld3 like "A%" limit 10;
fld3
abates
abiding
Abraham
abrogating
absentee
abut
accessed
accruing
accumulating
accuracies
select distinct substring(fld3,1,3) from t2 where fld3 like "A%";
substring(fld3,1,3)
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
Adl
adm
Ado
ads
adv
aer
aff
afi
afl
afo
agi
ahe
aim
air
Ald
alg
ali
all
alp
alr
ama
ame
amm
ana
and
ane
Ang
ani
Ann
Ant
api
app
aqu
Ara
arc
Arm
arr
Art
Asi
ask
asp
ass
ast
att
aud
Aug
aut
ave
avo
awe
aye
Azt
select distinct substring(fld3,1,3) as a from t2 having a like "A%" order by a limit 10;
a
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
select distinct substring(fld3,1,3) from t2 where fld3 like "A%" limit 10;
substring(fld3,1,3)
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
select distinct substring(fld3,1,3) as a from t2 having a like "A%" limit 10;
a
aba
abi
Abr
abs
abu
acc
acq
acu
Ade
adj
create table t3 (
period int not null,
name char(32) not null,
companynr int not null,
price double(11,0),
price2 double(11,0),
key (period),
key (name)
);
create temporary table tmp engine = myisam select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
insert into tmp select * from t3;
insert into t3 select * from tmp;
alter table t3 add t2nr int not null auto_increment primary key first;
drop table tmp;
SET SQL_BIG_TABLES=1;
select distinct concat(fld3," ",fld3) as namn from t2,t3 where t2.fld1=t3.t2nr order by namn limit 10;
namn
Abraham Abraham
abrogating abrogating
admonishing admonishing
Adolph Adolph
afield afield
aging aging
ammonium ammonium
analyzable analyzable
animals animals
animized animized
SET SQL_BIG_TABLES=0;
select distinct concat(fld3," ",fld3) from t2,t3 where t2.fld1=t3.t2nr order by fld3 limit 10;
concat(fld3," ",fld3)
Abraham Abraham
abrogating abrogating
admonishing admonishing
Adolph Adolph
afield afield
aging aging
ammonium ammonium
analyzable analyzable
animals animals
animized animized
select distinct fld5 from t2 limit 10;
fld5
neat
Steinberg
jarring
tinily
balled
persist
attainments
fanatic
measures
rightfulness
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
and 1
annoyers 1
Anthony 1
assayed 1
assurers 1
attendants 1
bedlam 1
bedpost 1
boasted 1
SET SQL_BIG_TABLES=1;
select distinct fld3,count(*) from t2 group by companynr,fld3 limit 10;
fld3 count(*)
affixed 1
and 1
annoyers 1
Anthony 1
assayed 1
assurers 1
attendants 1
bedlam 1
bedpost 1
boasted 1
SET SQL_BIG_TABLES=0;
select distinct fld3,repeat("a",length(fld3)),count(*) from t2 group by companynr,fld3 limit 100,10;
fld3 repeat("a",length(fld3)) count(*)
circus aaaaaa 1
cited aaaaa 1
Colombo aaaaaaa 1
congresswoman aaaaaaaaaaaaa 1
contrition aaaaaaaaaa 1
corny aaaaa 1
cultivation aaaaaaaaaaa 1
definiteness aaaaaaaaaaaa 1
demultiplex aaaaaaaaaaa 1
disappointing aaaaaaaaaaaaa 1
select distinct companynr,rtrim(space(512+companynr)) from t3 order by 1,2;
companynr rtrim(space(512+companynr))
37
78
101
154
311
447
512
select distinct fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2nr order by fld3;
fld3
explain select t3.t2nr,fld3 from t2,t3 where t2.companynr = 34 and t2.fld1=t3.t2nr order by t3.t2nr,fld3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL fld1 NULL NULL NULL 1199 Using where; Using temporary; Using filesort
1 SIMPLE t3 eq_ref PRIMARY PRIMARY 4 test.t2.fld1 1 Using where; Using index
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ALL period NULL NULL NULL 41810 Using temporary; Using filesort
1 SIMPLE t3 ref period period 4 test.t1.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t3.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t3 index period period 4 NULL 41810
1 SIMPLE t1 ref period period 4 test.t3.period 4181
explain select * from t3 as t1,t3 where t1.period=t3.period order by t1.period limit 10;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 index period period 4 NULL 41810
1 SIMPLE t3 ref period period 4 test.t1.period 4181
select period from t1;
period
9410
select period from t1 where period=1900;
period
select fld3,period from t1,t2 where fld1 = 011401 order by period;
fld3 period
breaking 9410
select fld3,period from t2,t3 where t2.fld1 = 011401 and t2.fld1=t3.t2nr and t3.period=1001;
fld3 period
breaking 1001
explain select fld3,period from t2,t3 where t2.fld1 = 011401 and t3.t2nr=t2.fld1 and 1001 = t3.period;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 const fld1 fld1 4 const 1
1 SIMPLE t3 const PRIMARY,period PRIMARY 4 const 1
select fld3,period from t2,t1 where companynr*10 = 37*10;
fld3 period
breaking 9410
Romans 9410
intercepted 9410
bewilderingly 9410
astound 9410
admonishing 9410
sumac 9410
flanking 9410
combed 9410
subjective 9410
scatterbrain 9410
Eulerian 9410
Kane 9410
overlay 9410
perturb 9410
goblins 9410
annihilates 9410
Wotan 9410
snatching 9410
concludes 9410
laterally 9410
yelped 9410
grazing 9410
Baird 9410
celery 9410
misunderstander 9410
handgun 9410
foldout 9410
mystic 9410
succumbed 9410
Nabisco 9410
fingerings 9410
aging 9410
afield 9410
ammonium 9410
boat 9410
intelligibility 9410
Augustine 9410
teethe 9410
dreaded 9410
scholastics 9410
audiology 9410
wallet 9410
parters 9410
eschew 9410
quitter 9410
neat 9410
Steinberg 9410
jarring 9410
tinily 9410
balled 9410
persist 9410
attainments 9410
fanatic 9410
measures 9410
rightfulness 9410
capably 9410
impulsive 9410
starlet 9410
terminators 9410
untying 9410
announces 9410
featherweight 9410
pessimist 9410
daughter 9410
decliner 9410
lawgiver 9410
stated 9410
readable 9410
attrition 9410
cascade 9410
motors 9410
interrogate 9410
pests 9410
stairway 9410
dopers 9410
testicle 9410
Parsifal 9410
leavings 9410
postulation 9410
squeaking 9410
contrasted 9410
leftover 9410
whiteners 9410
erases 9410
Punjab 9410
Merritt 9410
Quixotism 9410
sweetish 9410
dogging 9410
scornfully 9410
bellow 9410
bills 9410
cupboard 9410
sureties 9410
puddings 9410
fetters 9410
bivalves 9410
incurring 9410
Adolph 9410
pithed 9410
Miles 9410
trimmings 9410
tragedies 9410
skulking 9410
flint 9410
flopping 9410
relaxing 9410
offload 9410
suites 9410
lists 9410
animized 9410
multilayer 9410
standardizes 9410
Judas 9410
vacuuming 9410
dentally 9410
humanness 9410
inch 9410
Weissmuller 9410
irresponsibly 9410
luckily 9410
culled 9410
medical 9410
bloodbath 9410
subschema 9410
animals 9410
Micronesia 9410
repetitions 9410
Antares 9410
ventilate 9410
pityingly 9410
interdependent 9410
Graves 9410
neonatal 9410
chafe 9410
honoring 9410
realtor 9410
elite 9410
funereal 9410
abrogating 9410
sorters 9410
Conley 9410
lectured 9410
Abraham 9410
Hawaii 9410
cage 9410
hushes 9410
Simla 9410
reporters 9410
Dutchman 9410
descendants 9410
groupings 9410
dissociate 9410
coexist 9410
Beebe 9410
Taoism 9410
Connally 9410
fetched 9410
checkpoints 9410
rusting 9410
galling 9410
obliterates 9410
traitor 9410
resumes 9410
analyzable 9410
terminator 9410
gritty 9410
firearm 9410
minima 9410
Selfridge 9410
disable 9410
witchcraft 9410
betroth 9410
Manhattanize 9410
imprint 9410
peeked 9410
swelling 9410
interrelationships 9410
riser 9410
Gandhian 9410
peacock 9410
bee 9410
kanji 9410
dental 9410
scarf 9410
chasm 9410
insolence 9410
syndicate 9410
alike 9410
imperial 9410
convulsion 9410
railway 9410
validate 9410
normalizes 9410
comprehensive 9410
chewing 9410
denizen 9410
schemer 9410
chronicle 9410
Kline 9410
Anatole 9410
partridges 9410
brunch 9410
recruited 9410
dimensions 9410
Chicana 9410
announced 9410
praised 9410
employing 9410
linear 9410
quagmire 9410
western 9410
relishing 9410
serving 9410
scheduling 9410
lore 9410
eventful 9410
arteriole 9410
disentangle 9410
cured 9410
Fenton 9410
avoidable 9410
drains 9410
detectably 9410
husky 9410
impelling 9410
undoes 9410
evened 9410
squeezes 9410
destroyer 9410
rudeness 9410
beaner 9410
boorish 9410
Everhart 9410
encompass 9410
mushrooms 9410
Alison 9410
externally 9410
pellagra 9410
cult 9410
creek 9410
Huffman 9410
Majorca 9410
governing 9410
gadfly 9410
reassigned 9410
intentness 9410
craziness 9410
psychic 9410
squabbled 9410
burlesque 9410
capped 9410
extracted 9410
DiMaggio 9410
exclamation 9410
subdirectory 9410
Gothicism 9410
feminine 9410
metaphysically 9410
sanding 9410
Miltonism 9410
freakish 9410
index 9410
straight 9410
flurried 9410
denotative 9410
coming 9410
commencements 9410
gentleman 9410
gifted 9410
Shanghais 9410
sportswriting 9410
sloping 9410
navies 9410
leaflet 9410
shooter 9410
Joplin 9410
babies 9410
assails 9410
admiring 9410
swaying 9410
Goldstine 9410
fitting 9410
Norwalk 9410
analogy 9410
deludes 9410
cokes 9410
Clayton 9410
exhausts 9410
causality 9410
sating 9410
icon 9410
throttles 9410
communicants 9410
dehydrate 9410
priceless 9410
publicly 9410
incidentals 9410
commonplace 9410
mumbles 9410
furthermore 9410
cautioned 9410
parametrized 9410
registration 9410
sadly 9410
positioning 9410
babysitting 9410
eternal 9410
hoarder 9410
congregates 9410
rains 9410
workers 9410
sags 9410
unplug 9410
garage 9410
boulder 9410
specifics 9410
Teresa 9410
Winsett 9410
convenient 9410
buckboards 9410
amenities 9410
resplendent 9410
sews 9410
participated 9410
Simon 9410
certificates 9410
Fitzpatrick 9410
Evanston 9410
misted 9410
textures 9410
save 9410
count 9410
rightful 9410
chaperone 9410
Lizzy 9410
clenched 9410
effortlessly 9410
accessed 9410
beaters 9410
Hornblower 9410
vests 9410
indulgences 9410
infallibly 9410
unwilling 9410
excrete 9410
spools 9410
crunches 9410
overestimating 9410
ineffective 9410
humiliation 9410
sophomore 9410
star 9410
rifles 9410
dialysis 9410
arriving 9410
indulge 9410
clockers 9410
languages 9410
Antarctica 9410
percentage 9410
ceiling 9410
specification 9410
regimented 9410
ciphers 9410
pictures 9410
serpents 9410
allot 9410
realized 9410
mayoral 9410
opaquely 9410
hostess 9410
fiftieth 9410
incorrectly 9410
decomposition 9410
stranglings 9410
mixture 9410
electroencephalography 9410
similarities 9410
charges 9410
freest 9410
Greenberg 9410
tinting 9410
expelled 9410
warm 9410
smoothed 9410
deductions 9410
Romano 9410
bitterroot 9410
corset 9410
securing 9410
environing 9410
cute 9410
Crays 9410
heiress 9410
inform 9410
avenge 9410
universals 9410
Kinsey 9410
ravines 9410
bestseller 9410
equilibrium 9410
extents 9410
relatively 9410
pressure 9410
critiques 9410
befouled 9410
rightfully 9410
mechanizing 9410
Latinizes 9410
timesharing 9410
Aden 9410
embassies 9410
males 9410
shapelessly 9410
mastering 9410
Newtonian 9410
finishers 9410
abates 9410
teem 9410
kiting 9410
stodgy 9410
feed 9410
guitars 9410
airships 9410
store 9410
denounces 9410
Pyle 9410
Saxony 9410
serializations 9410
Peruvian 9410
taxonomically 9410
kingdom 9410
stint 9410
Sault 9410
faithful 9410
Ganymede 9410
tidiness 9410
gainful 9410
contrary 9410
Tipperary 9410
tropics 9410
theorizers 9410
renew 9410
already 9410
terminal 9410
Hegelian 9410
hypothesizer 9410
warningly 9410
journalizing 9410
nested 9410
Lars 9410
saplings 9410
foothill 9410
labeled 9410
imperiously 9410
reporters 9410
furnishings 9410
precipitable 9410
discounts 9410
excises 9410
Stalin 9410
despot 9410
ripeness 9410
Arabia 9410
unruly 9410
mournfulness 9410
boom 9410
slaughter 9410
Sabine 9410
handy 9410
rural 9410
organizer 9410
shipyard 9410
civics 9410
inaccuracy 9410
rules 9410
juveniles 9410
comprised 9410
investigations 9410
stabilizes 9410
seminaries 9410
Hunter 9410
sporty 9410
test 9410
weasels 9410
CERN 9410
tempering 9410
afore 9410
Galatean 9410
techniques 9410
error 9410
veranda 9410
severely 9410
Cassites 9410
forthcoming 9410
guides 9410
vanish 9410
lied 9410
sawtooth 9410
fated 9410
gradually 9410
widens 9410
preclude 9410
evenhandedly 9410
percentage 9410
disobedience 9410
humility 9410
gleaning 9410
petted 9410
bloater 9410
minion 9410
marginal 9410
apiary 9410
measures 9410
precaution 9410
repelled 9410
primary 9410
coverings 9410
Artemia 9410
navigate 9410
spatial 9410
Gurkha 9410
meanwhile 9410
Melinda 9410
Butterfield 9410
Aldrich 9410
previewing 9410
glut 9410
unaffected 9410
inmate 9410
mineral 9410
impending 9410
meditation 9410
ideas 9410
miniaturizes 9410
lewdly 9410
title 9410
youthfulness 9410
creak 9410
Chippewa 9410
clamored 9410
freezes 9410
forgivably 9410
reduce 9410
McGovern 9410
Nazis 9410
epistle 9410
socializes 9410
conceptions 9410
Kevin 9410
uncovering 9410
chews 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
appendixes 9410
raining 9410
infest 9410
compartment 9410
minting 9410
ducks 9410
roped 9410
waltz 9410
Lillian 9410
repressions 9410
chillingly 9410
noncritical 9410
lithograph 9410
spongers 9410
parenthood 9410
posed 9410
instruments 9410
filial 9410
fixedly 9410
relives 9410
Pandora 9410
watering 9410
ungrateful 9410
secures 9410
poison 9410
dusted 9410
encompasses 9410
presentation 9410
Kantian 9410
select fld3,period,price,price2 from t2,t3 where t2.fld1=t3.t2nr and period >= 1001 and period <= 1002 and t2.companynr = 37 order by fld3,period, price;
fld3 period price price2
admonishing 1002 28357832 8723648
analyzable 1002 28357832 8723648
annihilates 1001 5987435 234724
Antares 1002 28357832 8723648
astound 1001 5987435 234724
audiology 1001 5987435 234724
Augustine 1002 28357832 8723648
Baird 1002 28357832 8723648
bewilderingly 1001 5987435 234724
breaking 1001 5987435 234724
Conley 1001 5987435 234724
dentally 1002 28357832 8723648
dissociate 1002 28357832 8723648
elite 1001 5987435 234724
eschew 1001 5987435 234724
Eulerian 1001 5987435 234724
flanking 1001 5987435 234724
foldout 1002 28357832 8723648
funereal 1002 28357832 8723648
galling 1002 28357832 8723648
Graves 1001 5987435 234724
grazing 1001 5987435 234724
groupings 1001 5987435 234724
handgun 1001 5987435 234724
humility 1002 28357832 8723648
impulsive 1002 28357832 8723648
inch 1001 5987435 234724
intelligibility 1001 5987435 234724
jarring 1001 5987435 234724
lawgiver 1001 5987435 234724
lectured 1002 28357832 8723648
Merritt 1002 28357832 8723648
neonatal 1001 5987435 234724
offload 1002 28357832 8723648
parters 1002 28357832 8723648
pityingly 1002 28357832 8723648
puddings 1002 28357832 8723648
Punjab 1001 5987435 234724
quitter 1002 28357832 8723648
realtor 1001 5987435 234724
relaxing 1001 5987435 234724
repetitions 1001 5987435 234724
resumes 1001 5987435 234724
Romans 1002 28357832 8723648
rusting 1001 5987435 234724
scholastics 1001 5987435 234724
skulking 1002 28357832 8723648
stated 1002 28357832 8723648
suites 1002 28357832 8723648
sureties 1001 5987435 234724
testicle 1002 28357832 8723648
tinily 1002 28357832 8723648
tragedies 1001 5987435 234724
trimmings 1001 5987435 234724
vacuuming 1001 5987435 234724
ventilate 1001 5987435 234724
wallet 1001 5987435 234724
Weissmuller 1002 28357832 8723648
Wotan 1002 28357832 8723648
select t2.fld1,fld3,period,price,price2 from t2,t3 where t2.fld1>= 18201 and t2.fld1 <= 18811 and t2.fld1=t3.t2nr and period = 1001 and t2.companynr = 37;
fld1 fld3 period price price2
018201 relaxing 1001 5987435 234724
018601 vacuuming 1001 5987435 234724
018801 inch 1001 5987435 234724
018811 repetitions 1001 5987435 234724
create table t4 (
companynr tinyint(2) unsigned zerofill NOT NULL default '00',
companyname char(30) NOT NULL default '',
PRIMARY KEY (companynr),
UNIQUE KEY companyname(companyname)
) ENGINE=MyISAM MAX_ROWS=50 PACK_KEYS=1 COMMENT='companynames';
select STRAIGHT_JOIN t2.companynr,companyname from t4,t2 where t2.companynr=t4.companynr group by t2.companynr;
companynr companyname
00 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select SQL_SMALL_RESULT t2.companynr,companyname from t4,t2 where t2.companynr=t4.companynr group by t2.companynr;
companynr companyname
00 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select * from t1,t1 t12;
Period Varor_period Period Varor_period
9410 9412 9410 9412
select t2.fld1,t22.fld1 from t2,t2 t22 where t2.fld1 >= 250501 and t2.fld1 <= 250505 and t22.fld1 >= 250501 and t22.fld1 <= 250505;
fld1 fld1
250501 250501
250502 250501
250503 250501
250504 250501
250505 250501
250501 250502
250502 250502
250503 250502
250504 250502
250505 250502
250501 250503
250502 250503
250503 250503
250504 250503
250505 250503
250501 250504
250502 250504
250503 250504
250504 250504
250505 250504
250501 250505
250502 250505
250503 250505
250504 250505
250505 250505
insert into t2 (fld1, companynr) values (999999,99);
select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
companynr companyname
99 NULL
select count(*) from t2 left join t4 using (companynr) where t4.companynr is not null;
count(*)
1199
explain select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1 Using where; Not exists
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1200 Using where; Not exists
select companynr,companyname from t2 left join t4 using (companynr) where companynr is null;
companynr companyname
select count(*) from t2 left join t4 using (companynr) where companynr is not null;
count(*)
1200
explain select companynr,companyname from t2 left join t4 using (companynr) where companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
delete from t2 where fld1=999999;
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 and t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
1 SIMPLE t4 eq_ref PRIMARY PRIMARY 1 test.t2.companynr 1
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr < 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 and companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where t2.companynr > 0 or t2.companynr < 0 or t4.companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select t2.companynr,companyname from t4 left join t2 using (companynr) where ifnull(t2.companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where companynr > 0 or companynr < 0 or companynr > 0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL PRIMARY NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
explain select companynr,companyname from t4 left join t2 using (companynr) where ifnull(companynr,1)>0;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 ALL NULL NULL NULL NULL 12 Using where
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
companynr companynr
37 36
41 40
explain select distinct t2.companynr,t4.companynr from t2,t4 where t2.companynr=t4.companynr+1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t4 index NULL PRIMARY 1 NULL 12 Using index; Using temporary
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
select t2.fld1,t2.companynr,fld3,period from t3,t2 where t2.fld1 = 38208 and t2.fld1=t3.t2nr and period = 1008 or t2.fld1 = 38008 and t2.fld1 =t3.t2nr and period = 1008;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select t2.fld1,t2.companynr,fld3,period from t3,t2 where (t2.fld1 = 38208 or t2.fld1 = 38008) and t2.fld1=t3.t2nr and period>=1008 and period<=1009;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select t2.fld1,t2.companynr,fld3,period from t3,t2 where (t3.t2nr = 38208 or t3.t2nr = 38008) and t2.fld1=t3.t2nr and period>=1008 and period<=1009;
fld1 companynr fld3 period
038008 37 reporters 1008
038208 37 Selfridge 1008
select period from t1 where (((period > 0) or period < 10000 or (period = 1900)) and (period=1900 and period <= 1901) or (period=1903 and (period=1903)) and period>=1902) or ((period=1904 or period=1905) or (period=1906 or period>1907)) or (period=1908 and period = 1909);
period
9410
select period from t1 where ((period > 0 and period < 1) or (((period > 0 and period < 100) and (period > 10)) or (period > 10)) or (period > 0 and (period > 5 or period > 6)));
period
9410
select a.fld1 from t2 as a,t2 b where ((a.fld1 = 250501 and a.fld1=b.fld1) or a.fld1=250502 or a.fld1=250503 or (a.fld1=250505 and a.fld1<=b.fld1 and b.fld1>=a.fld1)) and a.fld1=b.fld1;
fld1
250501
250502
250503
250505
select fld1 from t2 where fld1 in (250502,98005,98006,250503,250605,250606) and fld1 >=250502 and fld1 not in (250605,250606);
fld1
250502
250503
select fld1 from t2 where fld1 between 250502 and 250504;
fld1
250502
250503
250504
select fld3 from t2 where (((fld3 like "_%L%" ) or (fld3 like "%ok%")) and ( fld3 like "L%" or fld3 like "G%")) and fld3 like "L%" ;
fld3
label
labeled
labeled
landslide
laterally
leaflet
lewdly
Lillian
luckily
select count(*) from t1;
count(*)
1
select companynr,count(*),sum(fld1) from t2 group by companynr;
companynr count(*) sum(fld1)
00 82 10355753
29 95 14473298
34 70 17788966
36 215 22786296
37 588 83602098
40 37 6618386
41 52 12816335
50 11 1595438
53 4 793210
58 23 2254293
65 10 2284055
68 12 3097288
select companynr,count(*) from t2 group by companynr order by companynr desc limit 5;
companynr count(*)
68 12
65 10
58 23
53 4
50 11
select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
explain extended select count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 where companynr = 34 and fld4<>"";
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199 Using where
Warnings:
Note 1003 select count(0) AS `count(*)`,min(`test`.`t2`.`fld4`) AS `min(fld4)`,max(`test`.`t2`.`fld4`) AS `max(fld4)`,sum(`test`.`t2`.`fld1`) AS `sum(fld1)`,avg(`test`.`t2`.`fld1`) AS `avg(fld1)`,std(`test`.`t2`.`fld1`) AS `std(fld1)`,variance(`test`.`t2`.`fld1`) AS `variance(fld1)` from `test`.`t2` where ((`test`.`t2`.`companynr` = 34) and (`test`.`t2`.`fld4` <> _latin1''))
select companynr,count(*),min(fld4),max(fld4),sum(fld1),avg(fld1),std(fld1),variance(fld1) from t2 group by companynr limit 3;
companynr count(*) min(fld4) max(fld4) sum(fld1) avg(fld1) std(fld1) variance(fld1)
00 82 Anthony windmills 10355753 126289.6707 115550.9757 13352027981.7087
29 95 abut wetness 14473298 152350.5053 8368.5480 70032594.9026
34 70 absentee vest 17788966 254128.0857 3272.5940 10709871.3069
select companynr,t2nr,count(price),sum(price),min(price),max(price),avg(price) from t3 where companynr = 37 group by companynr,t2nr limit 10;
companynr t2nr count(price) sum(price) min(price) max(price) avg(price)
37 1 1 5987435 5987435 5987435 5987435.0000
37 2 1 28357832 28357832 28357832 28357832.0000
37 3 1 39654943 39654943 39654943 39654943.0000
37 11 1 5987435 5987435 5987435 5987435.0000
37 12 1 28357832 28357832 28357832 28357832.0000
37 13 1 39654943 39654943 39654943 39654943.0000
37 21 1 5987435 5987435 5987435 5987435.0000
37 22 1 28357832 28357832 28357832 28357832.0000
37 23 1 39654943 39654943 39654943 39654943.0000
37 31 1 5987435 5987435 5987435 5987435.0000
select /*! SQL_SMALL_RESULT */ companynr,t2nr,count(price),sum(price),min(price),max(price),avg(price) from t3 where companynr = 37 group by companynr,t2nr limit 10;
companynr t2nr count(price) sum(price) min(price) max(price) avg(price)
37 1 1 5987435 5987435 5987435 5987435.0000
37 2 1 28357832 28357832 28357832 28357832.0000
37 3 1 39654943 39654943 39654943 39654943.0000
37 11 1 5987435 5987435 5987435 5987435.0000
37 12 1 28357832 28357832 28357832 28357832.0000
37 13 1 39654943 39654943 39654943 39654943.0000
37 21 1 5987435 5987435 5987435 5987435.0000
37 22 1 28357832 28357832 28357832 28357832.0000
37 23 1 39654943 39654943 39654943 39654943.0000
37 31 1 5987435 5987435 5987435 5987435.0000
select companynr,count(price),sum(price),min(price),max(price),avg(price) from t3 group by companynr ;
companynr count(price) sum(price) min(price) max(price) avg(price)
37 12543 309394878010 5987435 39654943 24666736.6667
78 8362 414611089292 726498 98439034 49582766.0000
101 4181 3489454238 834598 834598 834598.0000
154 4181 4112197254950 983543950 983543950 983543950.0000
311 4181 979599938 234298 234298 234298.0000
447 4181 9929180954 2374834 2374834 2374834.0000
512 4181 3288532102 786542 786542 786542.0000
select distinct mod(companynr,10) from t4 group by companynr;
mod(companynr,10)
0
9
4
6
7
1
3
8
5
select distinct 1 from t4 group by companynr;
1
1
select count(distinct fld1) from t2;
count(distinct fld1)
1199
select companynr,count(distinct fld1) from t2 group by companynr;
companynr count(distinct fld1)
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(*) from t2 group by companynr;
companynr count(*)
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct concat(fld1,repeat(65,1000))) from t2 group by companynr;
companynr count(distinct concat(fld1,repeat(65,1000)))
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct concat(fld1,repeat(65,200))) from t2 group by companynr;
companynr count(distinct concat(fld1,repeat(65,200)))
00 82
29 95
34 70
36 215
37 588
40 37
41 52
50 11
53 4
58 23
65 10
68 12
select companynr,count(distinct floor(fld1/100)) from t2 group by companynr;
companynr count(distinct floor(fld1/100))
00 47
29 35
34 14
36 69
37 108
40 16
41 11
50 9
53 1
58 1
65 1
68 1
select companynr,count(distinct concat(repeat(65,1000),floor(fld1/100))) from t2 group by companynr;
companynr count(distinct concat(repeat(65,1000),floor(fld1/100)))
00 47
29 35
34 14
36 69
37 108
40 16
41 11
50 9
53 1
58 1
65 1
68 1
select sum(fld1),fld3 from t2 where fld3="Romans" group by fld1 limit 10;
sum(fld1) fld3
11402 Romans
select name,count(*) from t3 where name='cloakroom' group by name;
name count(*)
cloakroom 4181
select name,count(*) from t3 where name='cloakroom' and price>10 group by name;
name count(*)
cloakroom 4181
select count(*) from t3 where name='cloakroom' and price2=823742;
count(*)
4181
select name,count(*) from t3 where name='cloakroom' and price2=823742 group by name;
name count(*)
cloakroom 4181
select name,count(*) from t3 where name >= "extramarital" and price <= 39654943 group by name;
name count(*)
extramarital 4181
gazer 4181
gems 4181
Iranizes 4181
spates 4181
tucked 4181
violinist 4181
select t2.fld3,count(*) from t2,t3 where t2.fld1=158402 and t3.name=t2.fld3 group by t3.name;
fld3 count(*)
spates 4181
select companynr|0,companyname from t4 group by 1;
companynr|0 companyname
0 Unknown
29 company 1
34 company 2
36 company 3
37 company 4
40 company 5
41 company 6
50 company 11
53 company 7
58 company 8
65 company 9
68 company 10
select t2.companynr,companyname,count(*) from t2,t4 where t2.companynr=t4.companynr group by t2.companynr order by companyname;
companynr companyname count(*)
29 company 1 95
68 company 10 12
50 company 11 11
34 company 2 70
36 company 3 215
37 company 4 588
40 company 5 37
41 company 6 52
53 company 7 4
58 company 8 23
65 company 9 10
00 Unknown 82
select t2.fld1,count(*) from t2,t3 where t2.fld1=158402 and t3.name=t2.fld3 group by t3.name;
fld1 count(*)
158402 4181
select sum(Period)/count(*) from t1;
sum(Period)/count(*)
9410.0000
select companynr,count(price) as "count",sum(price) as "sum" ,abs(sum(price)/count(price)-avg(price)) as "diff",(0+count(price))*companynr as func from t3 group by companynr;
companynr count sum diff func
37 12543 309394878010 0.0000 464091
78 8362 414611089292 0.0000 652236
101 4181 3489454238 0.0000 422281
154 4181 4112197254950 0.0000 643874
311 4181 979599938 0.0000 1300291
447 4181 9929180954 0.0000 1868907
512 4181 3288532102 0.0000 2140672
select companynr,sum(price)/count(price) as avg from t3 group by companynr having avg > 70000000 order by avg;
companynr avg
154 983543950.0000
select companynr,count(*) from t2 group by companynr order by 2 desc;
companynr count(*)
37 588
36 215
29 95
00 82
34 70
41 52
40 37
58 23
68 12
50 11
65 10
53 4
select companynr,count(*) from t2 where companynr > 40 group by companynr order by 2 desc;
companynr count(*)
41 52
58 23
68 12
50 11
65 10
53 4
select t2.fld4,t2.fld1,count(price),sum(price),min(price),max(price),avg(price) from t3,t2 where t3.companynr = 37 and t2.fld1 = t3.t2nr group by fld1,t2.fld4;
fld4 fld1 count(price) sum(price) min(price) max(price) avg(price)
teethe 000001 1 5987435 5987435 5987435 5987435.0000
dreaded 011401 1 5987435 5987435 5987435 5987435.0000
scholastics 011402 1 28357832 28357832 28357832 28357832.0000
audiology 011403 1 39654943 39654943 39654943 39654943.0000
wallet 011501 1 5987435 5987435 5987435 5987435.0000
parters 011701 1 5987435 5987435 5987435 5987435.0000
eschew 011702 1 28357832 28357832 28357832 28357832.0000
quitter 011703 1 39654943 39654943 39654943 39654943.0000
neat 012001 1 5987435 5987435 5987435 5987435.0000
Steinberg 012003 1 39654943 39654943 39654943 39654943.0000
balled 012301 1 5987435 5987435 5987435 5987435.0000
persist 012302 1 28357832 28357832 28357832 28357832.0000
attainments 012303 1 39654943 39654943 39654943 39654943.0000
capably 012501 1 5987435 5987435 5987435 5987435.0000
impulsive 012602 1 28357832 28357832 28357832 28357832.0000
starlet 012603 1 39654943 39654943 39654943 39654943.0000
featherweight 012701 1 5987435 5987435 5987435 5987435.0000
pessimist 012702 1 28357832 28357832 28357832 28357832.0000
daughter 012703 1 39654943 39654943 39654943 39654943.0000
lawgiver 013601 1 5987435 5987435 5987435 5987435.0000
stated 013602 1 28357832 28357832 28357832 28357832.0000
readable 013603 1 39654943 39654943 39654943 39654943.0000
testicle 013801 1 5987435 5987435 5987435 5987435.0000
Parsifal 013802 1 28357832 28357832 28357832 28357832.0000
leavings 013803 1 39654943 39654943 39654943 39654943.0000
squeaking 013901 1 5987435 5987435 5987435 5987435.0000
contrasted 016001 1 5987435 5987435 5987435 5987435.0000
leftover 016201 1 5987435 5987435 5987435 5987435.0000
whiteners 016202 1 28357832 28357832 28357832 28357832.0000
erases 016301 1 5987435 5987435 5987435 5987435.0000
Punjab 016302 1 28357832 28357832 28357832 28357832.0000
Merritt 016303 1 39654943 39654943 39654943 39654943.0000
sweetish 018001 1 5987435 5987435 5987435 5987435.0000
dogging 018002 1 28357832 28357832 28357832 28357832.0000
scornfully 018003 1 39654943 39654943 39654943 39654943.0000
fetters 018012 1 28357832 28357832 28357832 28357832.0000
bivalves 018013 1 39654943 39654943 39654943 39654943.0000
skulking 018021 1 5987435 5987435 5987435 5987435.0000
flint 018022 1 28357832 28357832 28357832 28357832.0000
flopping 018023 1 39654943 39654943 39654943 39654943.0000
Judas 018032 1 28357832 28357832 28357832 28357832.0000
vacuuming 018033 1 39654943 39654943 39654943 39654943.0000
medical 018041 1 5987435 5987435 5987435 5987435.0000
bloodbath 018042 1 28357832 28357832 28357832 28357832.0000
subschema 018043 1 39654943 39654943 39654943 39654943.0000
interdependent 018051 1 5987435 5987435 5987435 5987435.0000
Graves 018052 1 28357832 28357832 28357832 28357832.0000
neonatal 018053 1 39654943 39654943 39654943 39654943.0000
sorters 018061 1 5987435 5987435 5987435 5987435.0000
epistle 018062 1 28357832 28357832 28357832 28357832.0000
Conley 018101 1 5987435 5987435 5987435 5987435.0000
lectured 018102 1 28357832 28357832 28357832 28357832.0000
Abraham 018103 1 39654943 39654943 39654943 39654943.0000
cage 018201 1 5987435 5987435 5987435 5987435.0000
hushes 018202 1 28357832 28357832 28357832 28357832.0000
Simla 018402 1 28357832 28357832 28357832 28357832.0000
reporters 018403 1 39654943 39654943 39654943 39654943.0000
coexist 018601 1 5987435 5987435 5987435 5987435.0000
Beebe 018602 1 28357832 28357832 28357832 28357832.0000
Taoism 018603 1 39654943 39654943 39654943 39654943.0000
Connally 018801 1 5987435 5987435 5987435 5987435.0000
fetched 018802 1 28357832 28357832 28357832 28357832.0000
checkpoints 018803 1 39654943 39654943 39654943 39654943.0000
gritty 018811 1 5987435 5987435 5987435 5987435.0000
firearm 018812 1 28357832 28357832 28357832 28357832.0000
minima 019101 1 5987435 5987435 5987435 5987435.0000
Selfridge 019102 1 28357832 28357832 28357832 28357832.0000
disable 019103 1 39654943 39654943 39654943 39654943.0000
witchcraft 019201 1 5987435 5987435 5987435 5987435.0000
betroth 030501 1 5987435 5987435 5987435 5987435.0000
Manhattanize 030502 1 28357832 28357832 28357832 28357832.0000
imprint 030503 1 39654943 39654943 39654943 39654943.0000
swelling 031901 1 5987435 5987435 5987435 5987435.0000
interrelationships 036001 1 5987435 5987435 5987435 5987435.0000
riser 036002 1 28357832 28357832 28357832 28357832.0000
bee 038001 1 5987435 5987435 5987435 5987435.0000
kanji 038002 1 28357832 28357832 28357832 28357832.0000
dental 038003 1 39654943 39654943 39654943 39654943.0000
railway 038011 1 5987435 5987435 5987435 5987435.0000
validate 038012 1 28357832 28357832 28357832 28357832.0000
normalizes 038013 1 39654943 39654943 39654943 39654943.0000
Kline 038101 1 5987435 5987435 5987435 5987435.0000
Anatole 038102 1 28357832 28357832 28357832 28357832.0000
partridges 038103 1 39654943 39654943 39654943 39654943.0000
recruited 038201 1 5987435 5987435 5987435 5987435.0000
dimensions 038202 1 28357832 28357832 28357832 28357832.0000
Chicana 038203 1 39654943 39654943 39654943 39654943.0000
select t3.companynr,fld3,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 group by companynr,fld3;
companynr fld3 sum(price)
512 boat 786542
512 capably 786542
512 cupboard 786542
512 decliner 786542
512 descendants 786542
512 dopers 786542
512 erases 786542
512 Micronesia 786542
512 Miles 786542
512 skies 786542
select t2.companynr,count(*),min(fld3),max(fld3),sum(price),avg(price) from t2,t3 where t3.companynr >= 30 and t3.companynr <= 58 and t3.t2nr = t2.fld1 and 1+1=2 group by t2.companynr;
companynr count(*) min(fld3) max(fld3) sum(price) avg(price)
00 1 Omaha Omaha 5987435 5987435.0000
36 1 dubbed dubbed 28357832 28357832.0000
37 83 Abraham Wotan 1908978016 22999735.1325
50 2 scribbled tapestry 68012775 34006387.5000
select t3.companynr+0,t3.t2nr,fld3,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 37 group by 1,t3.t2nr,fld3,fld3,fld3,fld3,fld3 order by fld1;
t3.companynr+0 t2nr fld3 sum(price)
37 1 Omaha 5987435
37 11401 breaking 5987435
37 11402 Romans 28357832
37 11403 intercepted 39654943
37 11501 bewilderingly 5987435
37 11701 astound 5987435
37 11702 admonishing 28357832
37 11703 sumac 39654943
37 12001 flanking 5987435
37 12003 combed 39654943
37 12301 Eulerian 5987435
37 12302 dubbed 28357832
37 12303 Kane 39654943
37 12501 annihilates 5987435
37 12602 Wotan 28357832
37 12603 snatching 39654943
37 12701 grazing 5987435
37 12702 Baird 28357832
37 12703 celery 39654943
37 13601 handgun 5987435
37 13602 foldout 28357832
37 13603 mystic 39654943
37 13801 intelligibility 5987435
37 13802 Augustine 28357832
37 13803 teethe 39654943
37 13901 scholastics 5987435
37 16001 audiology 5987435
37 16201 wallet 5987435
37 16202 parters 28357832
37 16301 eschew 5987435
37 16302 quitter 28357832
37 16303 neat 39654943
37 18001 jarring 5987435
37 18002 tinily 28357832
37 18003 balled 39654943
37 18012 impulsive 28357832
37 18013 starlet 39654943
37 18021 lawgiver 5987435
37 18022 stated 28357832
37 18023 readable 39654943
37 18032 testicle 28357832
37 18033 Parsifal 39654943
37 18041 Punjab 5987435
37 18042 Merritt 28357832
37 18043 Quixotism 39654943
37 18051 sureties 5987435
37 18052 puddings 28357832
37 18053 tapestry 39654943
37 18061 trimmings 5987435
37 18062 humility 28357832
37 18101 tragedies 5987435
37 18102 skulking 28357832
37 18103 flint 39654943
37 18201 relaxing 5987435
37 18202 offload 28357832
37 18402 suites 28357832
37 18403 lists 39654943
37 18601 vacuuming 5987435
37 18602 dentally 28357832
37 18603 humanness 39654943
37 18801 inch 5987435
37 18802 Weissmuller 28357832
37 18803 irresponsibly 39654943
37 18811 repetitions 5987435
37 18812 Antares 28357832
37 19101 ventilate 5987435
37 19102 pityingly 28357832
37 19103 interdependent 39654943
37 19201 Graves 5987435
37 30501 neonatal 5987435
37 30502 scribbled 28357832
37 30503 chafe 39654943
37 31901 realtor 5987435
37 36001 elite 5987435
37 36002 funereal 28357832
37 38001 Conley 5987435
37 38002 lectured 28357832
37 38003 Abraham 39654943
37 38011 groupings 5987435
37 38012 dissociate 28357832
37 38013 coexist 39654943
37 38101 rusting 5987435
37 38102 galling 28357832
37 38103 obliterates 39654943
37 38201 resumes 5987435
37 38202 analyzable 28357832
37 38203 terminator 39654943
select sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 and t3.t2nr = 38008 and t2.fld1 = 38008 or t2.fld1= t3.t2nr and t3.t2nr = 38008 and t2.fld1 = 38008;
sum(price)
234298
select t2.fld1,sum(price) from t3,t2 where t2.fld1 = t3.t2nr and t3.companynr = 512 and t3.t2nr = 38008 and t2.fld1 = 38008 or t2.fld1 = t3.t2nr and t3.t2nr = 38008 and t2.fld1 = 38008 or t3.t2nr = t2.fld1 and t2.fld1 = 38008 group by t2.fld1;
fld1 sum(price)
038008 234298
explain select fld3 from t2 where 1>2 or 2>3;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
explain select fld3 from t2 where fld1=fld1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL NULL NULL NULL NULL 1199
select companynr,fld1 from t2 HAVING fld1=250501 or fld1=250502;
companynr fld1
34 250501
34 250502
select companynr,fld1 from t2 WHERE fld1>=250501 HAVING fld1<=250502;
companynr fld1
34 250501
34 250502
select companynr,count(*) as count,sum(fld1) as sum from t2 group by companynr having count > 40 and sum/count >= 120000;
companynr count sum
00 82 10355753
29 95 14473298
34 70 17788966
37 588 83602098
41 52 12816335
select companynr from t2 group by companynr having count(*) > 40 and sum(fld1)/count(*) >= 120000 ;
companynr
00
29
34
37
41
select t2.companynr,companyname,count(*) from t2,t4 where t2.companynr=t4.companynr group by companyname having t2.companynr >= 40;
companynr companyname count(*)
68 company 10 12
50 company 11 11
40 company 5 37
41 company 6 52
53 company 7 4
58 company 8 23
65 company 9 10
select count(*) from t2;
count(*)
1199
select count(*) from t2 where fld1 < 098024;
count(*)
387
select min(fld1) from t2 where fld1>= 098024;
min(fld1)
98024
select max(fld1) from t2 where fld1>= 098024;
max(fld1)
1232609
select count(*) from t3 where price2=76234234;
count(*)
4181
select count(*) from t3 where companynr=512 and price2=76234234;
count(*)
4181
explain select min(fld1),max(fld1),count(*) from t2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
select min(fld1),max(fld1),count(*) from t2;
min(fld1) max(fld1) count(*)
0 1232609 1199
select min(t2nr),max(t2nr) from t3 where t2nr=2115 and price2=823742;
min(t2nr) max(t2nr)
2115 2115
select count(*),min(t2nr),max(t2nr) from t3 where name='spates' and companynr=78;
count(*) min(t2nr) max(t2nr)
4181 4 41804
select t2nr,count(*) from t3 where name='gems' group by t2nr limit 20;
t2nr count(*)
9 1
19 1
29 1
39 1
49 1
59 1
69 1
79 1
89 1
99 1
109 1
119 1
129 1
139 1
149 1
159 1
169 1
179 1
189 1
199 1
select max(t2nr) from t3 where price=983543950;
max(t2nr)
41807
select t1.period from t3 = t1 limit 1;
period
1001
select t1.period from t1 as t1 limit 1;
period
9410
select t1.period as "Nuvarande period" from t1 as t1 limit 1;
Nuvarande period
9410
select period as ok_period from t1 limit 1;
ok_period
9410
select period as ok_period from t1 group by ok_period limit 1;
ok_period
9410
select 1+1 as summa from t1 group by summa limit 1;
summa
2
select period as "Nuvarande period" from t1 group by "Nuvarande period" limit 1;
Nuvarande period
9410
show tables;
Tables_in_test
t1
t2
t3
t4
show tables from test like "s%";
Tables_in_test (s%)
show tables from test like "t?";
Tables_in_test (t?)
show full columns from t2;
Field Type Collation Null Key Default Extra Privileges Comment
auto int(11) NULL NO PRI NULL auto_increment #
fld1 int(6) unsigned zerofill NULL NO UNI 000000 #
companynr tinyint(2) unsigned zerofill NULL NO 00 #
fld3 char(30) latin1_swedish_ci NO MUL #
fld4 char(35) latin1_swedish_ci NO #
fld5 char(35) latin1_swedish_ci NO #
fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 'f%';
Field Type Collation Null Key Default Extra Privileges Comment
fld1 int(6) unsigned zerofill NULL NO UNI 000000 #
fld3 char(30) latin1_swedish_ci NO MUL #
fld4 char(35) latin1_swedish_ci NO #
fld5 char(35) latin1_swedish_ci NO #
fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
ver_nr int(11) NOT NULL default '0',
aufnr int(11) NOT NULL default '0',
username varchar(50) NOT NULL default '',
hdl_nr int(11) NOT NULL default '0',
eintrag date NOT NULL default '0000-00-00',
st_klasse varchar(40) NOT NULL default '',
st_wert varchar(40) NOT NULL default '',
st_zusatz varchar(40) NOT NULL default '',
st_bemerkung varchar(255) NOT NULL default '',
kunden_art varchar(40) NOT NULL default '',
mcbs_knr int(11) default NULL,
mcbs_aufnr int(11) NOT NULL default '0',
schufa_status char(1) default '?',
bemerkung text,
wirknetz text,
wf_igz int(11) NOT NULL default '0',
tarifcode varchar(80) default NULL,
recycle char(1) default NULL,
sim varchar(30) default NULL,
mcbs_tpl varchar(30) default NULL,
emp_nr int(11) NOT NULL default '0',
laufzeit int(11) default NULL,
hdl_name varchar(30) default NULL,
prov_hdl_nr int(11) NOT NULL default '0',
auto_wirknetz varchar(50) default NULL,
auto_billing varchar(50) default NULL,
touch timestamp NOT NULL,
kategorie varchar(50) default NULL,
kundentyp varchar(20) NOT NULL default '',
sammel_rech_msisdn varchar(30) NOT NULL default '',
p_nr varchar(9) NOT NULL default '',
suffix char(3) NOT NULL default '',
PRIMARY KEY (cont_nr),
KEY idx_aufnr(aufnr),
KEY idx_hdl_nr(hdl_nr),
KEY idx_st_klasse(st_klasse),
KEY ver_nr(ver_nr),
KEY eintrag_idx(eintrag),
KEY emp_nr_idx(emp_nr),
KEY wf_igz(wf_igz),
KEY touch(touch),
KEY hdl_tag(eintrag,hdl_nr),
KEY prov_hdl_nr(prov_hdl_nr),
KEY mcbs_aufnr(mcbs_aufnr),
KEY kundentyp(kundentyp),
KEY p_nr(p_nr,suffix)
) ENGINE=MyISAM;
INSERT INTO t1 VALUES (3359356,405,3359356,'Mustermann Musterfrau',52500,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1485525,2122316,'+','','N',1909160,'MobilComSuper92000D2',NULL,NULL,'MS9ND2',3,24,'MobilCom Shop Koeln',52500,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359357,468,3359357,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1503580,2139699,'+','','P',1909171,'MobilComSuper9D1T10SFreisprech(Akquise)',NULL,NULL,'MS9NS1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359358,407,3359358,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1501358,2137473,'N','','N',1909159,'MobilComSuper92000D2',NULL,NULL,'MS9ND2',325,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359359,468,3359359,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1507831,2143894,'+','','P',1909162,'MobilComSuper9D1T10SFreisprech(Akquise)',NULL,NULL,'MS9NS1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359360,0,0,'Mustermann Musterfrau',29674907,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1900169997,2414578,'+',NULL,'N',1909148,'',NULL,NULL,'RV99066_2',20,NULL,'POS',29674907,NULL,NULL,20010202105916,'Mobilfunk','','','97317481','007');
INSERT INTO t1 VALUES (3359361,406,3359361,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag storniert','','(7001-84):Storno, Kd. möchte nicht mehr','privat',NULL,0,'+','','P',1909150,'MobilComSuper92000D1(Akquise)',NULL,NULL,'MS9ND1',325,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
INSERT INTO t1 VALUES (3359362,406,3359362,'Mustermann Musterfrau',7001,'2000-05-20','workflow','Auftrag erledigt','Originalvertrag eingegangen und geprüft','','privat',1509984,2145874,'+','','P',1909154,'MobilComSuper92000D1(Akquise)',NULL,NULL,'MS9ND1',327,24,'MobilCom Intern',7003,NULL,'auto',20010202105916,'Mobilfunk','PP','','','');
SELECT ELT(FIELD(kundentyp,'PP','PPA','PG','PGA','FK','FKA','FP','FPA','K','KA','V','VA',''), 'Privat (Private Nutzung)','Privat (Private Nutzung) Sitz im Ausland','Privat (geschaeftliche Nutzung)','Privat (geschaeftliche Nutzung) Sitz im Ausland','Firma (Kapitalgesellschaft)','Firma (Kapitalgesellschaft) Sitz im Ausland','Firma (Personengesellschaft)','Firma (Personengesellschaft) Sitz im Ausland','oeff. rechtl. Koerperschaft','oeff. rechtl. Koerperschaft Sitz im Ausland','Eingetragener Verein','Eingetragener Verein Sitz im Ausland','Typ unbekannt') AS Kundentyp ,kategorie FROM t1 WHERE hdl_nr < 2000000 AND kategorie IN ('Prepaid','Mobilfunk') AND st_klasse = 'Workflow' GROUP BY kundentyp ORDER BY kategorie;
Kundentyp kategorie
Privat (Private Nutzung) Mobilfunk
Warnings:
Warning 1052 Column 'kundentyp' in group statement is ambiguous
drop table t1;
SHOW STATUS LIKE 'Ssl_cipher';
Variable_name Value
Ssl_cipher DHE-RSA-AES256-SHA
SHOW STATUS LIKE 'Compression';
Variable_name Value
Compression ON
# Turn on compression between the client and server
# and run a number of tests
-- source include/have_compress.inc
connect (comp_con,localhost,root,,,,,COMPRESS);
# Check compression turned on
SHOW STATUS LIKE 'Compression';
# Source select test case
-- source include/common-tests.inc
# Check compression turned on
SHOW STATUS LIKE 'Compression';
# This test is to check various cases of connections
# with right and wrong password, with and without database
# Unfortunately the check is incomplete as we can't handle errors on connect
# Also we can't connect without database
# with right and wrong password, with and without database
# Unfortunately the check is incomplete as we can't connect without database
# This test makes no sense with the embedded server
--source include/not_embedded.inc
......@@ -10,69 +9,72 @@
drop table if exists t1,t2;
--enable_warnings
#connect (con1,localhost,root,,"");
#show tables;
connect (con1,localhost,root,,mysql);
show tables;
connect (con1,localhost,root,,test);
connect (con2,localhost,root,,test);
show tables;
# Re enable this one day if error handling on connect will take place
#connect (con1,localhost,root,z,test2);
#--error 1045
#connect (con1,localhost,root,z,);
#--error 1045
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,root,z,test2);
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,root,z,);
grant ALL on *.* to test@localhost identified by "gambling";
grant ALL on *.* to test@127.0.0.1 identified by "gambling";
# Now check this user with different databases
#connect (con1,localhost,test,gambling,"");
#show tables;
connect (con1,localhost,test,gambling,mysql);
connect (con3,localhost,test,gambling,mysql);
show tables;
connect (con1,localhost,test,gambling,test);
connect (con4,localhost,test,gambling,test);
show tables;
# Re enable this one day if error handling on connect will take place
#connect (con1,localhost,test,,test2);
#--error 1045
#connect (con1,localhost,test,,"");
#--error 1045
#connect (con1,localhost,test,zorro,test2);
#--error 1045
#connect (con1,localhost,test,zorro,);
#--error 1045
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,,test2);
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,,"");
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,zorro,test2);
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,zorro,);
# check if old password version also works
update mysql.user set password=old_password("gambling2") where user=_binary"test";
flush privileges;
#connect (con1,localhost,test,gambling2,"");
#show tables;
connect (con1,localhost,test,gambling2,mysql);
connect (con10,localhost,test,gambling2,);
connect (con5,localhost,test,gambling2,mysql);
set password="";
--error 1372
set password='gambling3';
set password=old_password('gambling3');
show tables;
connect (con1,localhost,test,gambling3,test);
connect (con6,localhost,test,gambling3,test);
show tables;
# Re enable this one day if error handling on connect will take place
#connect (con1,localhost,test,,test2);
#--error 1045
#connect (con1,localhost,test,,);
#--error 1045
#connect (con1,localhost,test,zorro,test2);
#--error 1045
#connect (con1,localhost,test,zorro,);
#--error 1045
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,,test2);
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,,);
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,zorro,test2);
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR $MASTER_MYPORT MASTER_PORT
--error 1045
connect (fail_con,localhost,test,zorro,);
# remove user 'test' so that other tests which may use 'test'
......@@ -84,13 +86,13 @@ flush privileges;
#
# Bug#12517: Clear user variables and replication events before
# closing temp tables in thread cleanup.
connect (con2,localhost,root,,test);
connection con2;
connect (con7,localhost,root,,test);
connection con7;
create table t1 (id integer not null auto_increment primary key);
create temporary table t2(id integer not null auto_increment primary key);
set @id := 1;
delete from t1 where id like @id;
disconnect con2;
disconnect con7;
--sleep 5
connection default;
drop table t1;
......
......@@ -499,8 +499,8 @@ drop table t1;
#
grant select on test.* to mysqltest_4@localhost;
connect (user4,localhost,mysqltest_4,,);
connection user4;
connect (user10261,localhost,mysqltest_4,,);
connection user10261;
SELECT TABLE_NAME, COLUMN_NAME, PRIVILEGES FROM INFORMATION_SCHEMA.COLUMNS
where COLUMN_NAME='TABLE_NAME';
connection default;
......
......@@ -722,6 +722,7 @@ insert into t1 values (10),(11),(12);
select * from t1;
check table t1;
drop table t1;
disconnect con1;
# Same test with dynamic record length
create table t1 (a int, b varchar(30) default "hello");
......@@ -746,8 +747,10 @@ insert into t1 (a) values (10),(11),(12);
select a from t1;
check table t1;
drop table t1;
disconnect con1;
set global concurrent_insert=@save_concurrent_insert;
# BUG#9622 - ANALYZE TABLE and ALTER TABLE .. ENABLE INDEX produce
# different statistics on the same table with NULL values.
create table t1 (a int, key(a));
......
......@@ -358,11 +358,11 @@ select 3 from t1 ;
# Missing delimiter
# The comment will be "sucked into" the sleep command since
# delimiter is missing until after "show status"
--system echo "sleep 4" > var/log/mysqltest.sql
--system echo "# A comment" >> var/log/mysqltest.sql
--system echo "show status;" >> var/log/mysqltest.sql
--system echo "sleep 4" > var/tmp/mysqltest.sql
--system echo "# A comment" >> var/tmp/mysqltest.sql
--system echo "show status;" >> var/tmp/mysqltest.sql
--error 1
--exec $MYSQL_TEST < var/log/mysqltest.sql 2>&1
--exec $MYSQL_TEST < var/tmp/mysqltest.sql 2>&1
#
# Extra delimiter
......@@ -806,6 +806,66 @@ select "a" as col1, "c" as col2;
--error 1
--exec echo "save_master_pos; sync_with_master a;" | $MYSQL_TEST 2>&1
# ----------------------------------------------------------------------------
# Test connect
# ----------------------------------------------------------------------------
--error 1
--exec echo "connect;" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect ();" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con2);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con2,);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con2,localhost);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con2, localhost, root);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con2, localhost, root,);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con2,localhost,root,,illegal_db);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con1,localhost,root,,,illegal_port,);" | $MYSQL_TEST 2>&1
--error 1
--exec echo "connect (con1,localhost,root,,,,,SMTP POP);" | $MYSQL_TEST 2>&1
# Repeat connect/disconnect
--exec echo "let \$i=100;" > var/tmp/con.sql
--exec echo "while (\$i)" >> var/tmp/con.sql
--exec echo "{" >> var/tmp/con.sql
--exec echo " connect (test_con1,localhost,root,,); " >> var/tmp/con.sql
--exec echo " disconnect test_con1; " >> var/tmp/con.sql
--exec echo " dec \$i; " >> var/tmp/con.sql
--exec echo "}" >> var/tmp/con.sql
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1
# Repeat connect/disconnect, exceed max number of connections
--exec echo "let \$i=200;" > var/tmp/con.sql
--exec echo "while (\$i)" >> var/tmp/con.sql
--exec echo "{" >> var/tmp/con.sql
--exec echo " connect (test_con1,localhost,root,,); " >> var/tmp/con.sql
--exec echo " disconnect test_con1; " >> var/tmp/con.sql
--exec echo " dec \$i; " >> var/tmp/con.sql
--exec echo "}" >> var/tmp/con.sql
--error 1
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1
# Select disconnected connection
--exec echo "connect (test_con1,localhost,root,,);" > var/tmp/con.sql
--exec echo "disconnect test_con1; " >> var/tmp/con.sql
--exec echo "connection test_con1;" >> var/tmp/con.sql
--error 1
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1
# Connection name already used
--exec echo "connect (test_con1,localhost,root,,);" > var/tmp/con.sql
--exec echo "connect (test_con1,localhost,root,,);" >> var/tmp/con.sql
--error 1
--exec echo "source var/tmp/con.sql;" | $MYSQL_TEST 2>&1
# ----------------------------------------------------------------------------
# Test mysqltest arguments
......
# We test openssl. Result set is optimized to be compiled with --with-openssl.
# Use mysql-test-run with --with-openssl option.
-- source include/have_openssl_1.inc
-- source include/have_openssl.inc
--disable_warnings
drop table if exists t1;
......@@ -13,27 +13,36 @@ grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/Email=abstract.mysql.developer@mysql.com";
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/Email=abstract.mysql.developer@mysql.com" ISSUER "/C=SE/L=Uppsala/O=MySQL AB/CN=Abstract MySQL Developer/Email=abstract.mysql.developer@mysql.com";
flush privileges;
connect (con1,localhost,ssl_user1,,);
connect (con2,localhost,ssl_user2,,);
connect (con3,localhost,ssl_user3,,);
connect (con4,localhost,ssl_user4,,);
connect (con1,localhost,ssl_user1,,,,,SSL);
connect (con2,localhost,ssl_user2,,,,,SSL);
connect (con3,localhost,ssl_user3,,,,,SSL);
connect (con4,localhost,ssl_user4,,,,,SSL);
connection con1;
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
select * from t1;
--error 1142
delete from t1;
connection con2;
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
select * from t1;
--error 1142
delete from t1;
connection con3;
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
select * from t1;
--error 1142
delete from t1;
connection con4;
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
select * from t1;
--error 1142
delete from t1;
......
source include/have_openssl_1.inc;
source include/have_openssl.inc;
source include/master-slave.inc;
# We don't test all types of ssl auth params here since it's a bit hard
......
......@@ -336,6 +336,7 @@ connection user1;
do 1;
use test;
disconnect user1;
connection root;
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1@localhost;
drop function bug_9503;
......
# Turn on ssl between the client and server
# and run a number of tests
-- source include/have_openssl.inc
connect (ssl_con,localhost,root,,,,,SSL);
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
# Source select test case
-- source include/common-tests.inc
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
# Turn on compression between the client and server
# and run a number of tests
-- source include/have_openssl.inc
-- source include/have_compress.inc
connect (ssl_compress_con,localhost,root,,,,,SSL COMPRESS);
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
# Check compression turned on
SHOW STATUS LIKE 'Compression';
# Source select test case
-- source include/common-tests.inc
# Check ssl turned on
SHOW STATUS LIKE 'Ssl_cipher';
# Check compression turned on
SHOW STATUS LIKE 'Compression';
......@@ -15,7 +15,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
INCLUDES= @ZLIB_INCLUDES@ -I$(top_srcdir)/include \
$(openssl_includes) -I$(top_builddir)/include
@openssl_includes@ @yassl_includes@ -I$(top_builddir)/include
DEFS= -DMYSQL_INSTANCE_MANAGER -DMYSQL_SERVER
......@@ -85,7 +85,7 @@ mysqlmanager_LDADD= liboptions.a \
$(top_builddir)/mysys/libmysys.a \
$(top_builddir)/strings/libmystrings.a \
$(top_builddir)/dbug/libdbug.a \
@openssl_libs@ @ZLIB_LIBS@
@openssl_libs@ @yassl_libs@ @ZLIB_LIBS@
tags:
......
......@@ -1474,6 +1474,7 @@ mysql_ssl_set(MYSQL *mysql __attribute__((unused)) ,
const char *capath __attribute__((unused)),
const char *cipher __attribute__((unused)))
{
DBUG_ENTER("mysql_ssl_set");
#ifdef HAVE_OPENSSL
mysql->options.ssl_key= strdup_if_not_null(key);
mysql->options.ssl_cert= strdup_if_not_null(cert);
......@@ -1481,7 +1482,7 @@ mysql_ssl_set(MYSQL *mysql __attribute__((unused)) ,
mysql->options.ssl_capath= strdup_if_not_null(capath);
mysql->options.ssl_cipher= strdup_if_not_null(cipher);
#endif /* HAVE_OPENSSL */
return 0;
DBUG_RETURN(0);
}
......@@ -1494,6 +1495,7 @@ mysql_ssl_set(MYSQL *mysql __attribute__((unused)) ,
static void
mysql_ssl_free(MYSQL *mysql __attribute__((unused)))
{
DBUG_ENTER("mysql_ssl_free");
my_free(mysql->options.ssl_key, MYF(MY_ALLOW_ZERO_PTR));
my_free(mysql->options.ssl_cert, MYF(MY_ALLOW_ZERO_PTR));
my_free(mysql->options.ssl_ca, MYF(MY_ALLOW_ZERO_PTR));
......@@ -1507,6 +1509,7 @@ mysql_ssl_free(MYSQL *mysql __attribute__((unused)))
mysql->options.ssl_cipher= 0;
mysql->options.use_ssl = FALSE;
mysql->connector_fd = 0;
DBUG_VOID_RETURN;
}
#endif /* HAVE_OPENSSL */
......
......@@ -22,7 +22,8 @@ MYSQLBASEdir= $(prefix)
INCLUDES = @ZLIB_INCLUDES@ \
@bdb_includes@ @innodb_includes@ @ndbcluster_includes@ \
-I$(top_builddir)/include -I$(top_srcdir)/include \
-I$(top_srcdir)/regex -I$(srcdir) $(openssl_includes)
-I$(top_srcdir)/regex -I$(srcdir) $(yassl_includes) \
$(openssl_includes)
WRAPLIBS= @WRAPLIBS@
SUBDIRS = share
libexec_PROGRAMS = mysqld
......@@ -42,7 +43,8 @@ mysqld_LDADD = @MYSQLD_EXTRA_LDFLAGS@ \
@bdb_libs@ @innodb_libs@ @pstack_libs@ \
@innodb_system_libs@ \
@ndbcluster_libs@ @ndbcluster_system_libs@ \
$(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) @LIBDL@ @openssl_libs@
$(LDADD) $(CXXLDFLAGS) $(WRAPLIBS) @LIBDL@ \
@yassl_libs@ @openssl_libs@
noinst_HEADERS = item.h item_func.h item_sum.h item_cmpfunc.h \
item_strfunc.h item_timefunc.h item_uniq.h \
item_create.h item_subselect.h item_row.h \
......
......@@ -2860,7 +2860,14 @@ static void init_ssl()
opt_ssl_cipher);
DBUG_PRINT("info",("ssl_acceptor_fd: 0x%lx", (long) ssl_acceptor_fd));
if (!ssl_acceptor_fd)
{
opt_use_ssl = 0;
have_openssl= SHOW_OPTION_DISABLED;
}
}
else
{
have_openssl= SHOW_OPTION_DISABLED;
}
if (des_key_file)
load_des_key_file(des_key_file);
......@@ -5952,6 +5959,7 @@ struct show_var_st status_vars[]= {
{"Com_xa_recover", (char*) offsetof(STATUS_VAR, com_stat[(uint) SQLCOM_XA_RECOVER]),SHOW_LONG_STATUS},
{"Com_xa_rollback", (char*) offsetof(STATUS_VAR, com_stat[(uint) SQLCOM_XA_ROLLBACK]),SHOW_LONG_STATUS},
{"Com_xa_start", (char*) offsetof(STATUS_VAR, com_stat[(uint) SQLCOM_XA_START]),SHOW_LONG_STATUS},
{"Compression", (char*) 0, SHOW_NET_COMPRESSION},
{"Connections", (char*) &thread_id, SHOW_LONG_CONST},
{"Created_tmp_disk_tables", (char*) offsetof(STATUS_VAR, created_tmp_disk_tables), SHOW_LONG_STATUS},
{"Created_tmp_files", (char*) &my_tmp_file_created, SHOW_LONG},
......
......@@ -2172,8 +2172,9 @@ static void reset_stmt_params(Prepared_statement *stmt)
client, otherwise an error message is set in THD.
*/
void mysql_stmt_execute(THD *thd, char *packet, uint packet_length)
void mysql_stmt_execute(THD *thd, char *packet_arg, uint packet_length)
{
uchar *packet= (uchar*)packet_arg; // GCC 4.0.1 workaround
ulong stmt_id= uint4korr(packet);
ulong flags= (ulong) ((uchar) packet[4]);
/* Query text for binary, general or slow log, if any of them is open */
......
......@@ -1642,6 +1642,9 @@ static bool show_status_array(THD *thd, const char *wild,
value= (value-(char*) &dflt_key_cache_var)+ (char*) dflt_key_cache;
end= longlong10_to_str(*(longlong*) value, buff, 10);
break;
case SHOW_NET_COMPRESSION:
end= strmov(buff, thd->net.compress ? "ON" : "OFF");
break;
case SHOW_UNDEF: // Show never happen
case SHOW_SYS:
break; // Return empty string
......
......@@ -185,6 +185,7 @@ enum SHOW_TYPE
SHOW_SSL_CTX_SESS_TIMEOUTS, SHOW_SSL_CTX_SESS_CACHE_FULL,
SHOW_SSL_GET_CIPHER_LIST,
#endif /* HAVE_OPENSSL */
SHOW_NET_COMPRESSION,
SHOW_RPL_STATUS, SHOW_SLAVE_RUNNING, SHOW_SLAVE_RETRIED_TRANS,
SHOW_KEY_CACHE_LONG, SHOW_KEY_CACHE_CONST_LONG, SHOW_KEY_CACHE_LONGLONG,
SHOW_LONG_STATUS, SHOW_LONG_CONST_STATUS, SHOW_SLAVE_SKIP_ERRORS
......
......@@ -20,23 +20,23 @@ else
yassl_dummy_link_fix=
endif
INCLUDES= -I$(top_builddir)/include -I$(top_srcdir)/include \
$(openssl_includes)
LDADD= @CLIENT_EXTRA_LDFLAGS@ $(openssl_libs)
$(openssl_includes) $(yassl_includes)
LDADD= @CLIENT_EXTRA_LDFLAGS@ $(openssl_libs) $(yassl_libs)
pkglib_LIBRARIES= libvio.a
noinst_PROGRAMS = test-ssl test-sslserver test-sslclient
noinst_HEADERS= vio_priv.h
test_ssl_SOURCES= test-ssl.c $(yassl_dummy_link_fix)
test_ssl_LDADD= @CLIENT_EXTRA_LDFLAGS@ ../dbug/libdbug.a libvio.a \
../mysys/libmysys.a ../strings/libmystrings.a \
$(openssl_libs)
$(openssl_libs) $(yassl_libs)
test_sslserver_SOURCES= test-sslserver.c $(yassl_dummy_link_fix)
test_sslserver_LDADD= @CLIENT_EXTRA_LDFLAGS@ ../dbug/libdbug.a libvio.a \
../mysys/libmysys.a ../strings/libmystrings.a \
$(openssl_libs)
$(openssl_libs) $(yassl_libs)
test_sslclient_SOURCES= test-sslclient.c $(yassl_dummy_link_fix)
test_sslclient_LDADD= @CLIENT_EXTRA_LDFLAGS@ ../dbug/libdbug.a libvio.a \
../mysys/libmysys.a ../strings/libmystrings.a \
$(openssl_libs)
$(openssl_libs) $(yassl_libs)
libvio_a_SOURCES= vio.c viosocket.c viossl.c viosslfactories.c
# Don't update the files from bitkeeper
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment