SQLite
Hex Artifact Content
Not logged in

Artifact 4be6b8e81ec382c55a534489a2ffc43a2419fb0c:

Ticket change [4be6b8e81e] - New ticket [7c6a01c6c5] Multi-column index is not used with IN operator. by anonymous 2013-01-15 08:18:41.
0000: 44 20 32 30 31 33 2d 30 31 2d 31 35 54 30 38 3a  D 2013-01-15T08:
0010: 31 38 3a 34 31 2e 39 33 35 0a 4a 20 66 6f 75 6e  18:41.935.J foun
0020: 64 69 6e 20 33 2e 37 2e 31 35 2e 32 0a 4a 20 69  din 3.7.15.2.J i
0030: 63 6f 6d 6d 65 6e 74 20 48 61 76 69 6e 67 5c 73  comment Having\s
0040: 61 6e 5c 73 69 6e 64 65 78 5c 73 6f 6e 5c 73 33  an\sindex\son\s3
0050: 5c 73 69 6e 74 65 67 65 72 5c 73 63 6f 6c 75 6d  \sinteger\scolum
0060: 6e 73 5c 73 28 63 6f 6c 75 6d 6e 31 2c 5c 73 63  ns\s(column1,\sc
0070: 6f 6c 75 6d 6e 32 2c 5c 73 63 6f 6c 75 6d 6e 33  olumn2,\scolumn3
0080: 29 2c 5c 73 74 68 65 5c 73 61 6e 61 6c 79 73 65  ),\sthe\sanalyse
0090: 5c 73 63 6f 6d 6d 61 6e 64 5c 73 67 65 6e 65 72  \scommand\sgener
00a0: 61 74 65 73 5c 73 74 68 65 5c 73 73 74 61 74 31  ates\sthe\sstat1
00b0: 5c 73 61 6e 64 5c 73 73 74 61 74 33 5c 73 74 61  \sand\sstat3\sta
00c0: 62 6c 65 73 2e 5c 73 49 5c 73 73 65 65 5c 73 74  bles.\sI\ssee\st
00d0: 68 65 5c 73 66 6f 6c 6c 6f 77 69 6e 67 5c 73 73  he\sfollowing\ss
00e0: 74 61 74 69 73 74 69 63 73 5c 73 66 6f 72 5c 73  tatistics\sfor\s
00f0: 74 68 69 73 5c 73 69 6e 64 65 78 5c 73 69 6e 5c  this\sindex\sin\
0100: 73 74 68 65 5c 73 73 71 6c 69 74 65 5f 73 74 61  sthe\ssqlite_sta
0110: 74 31 5c 73 74 61 62 6c 65 3a 5c 72 5c 6e 5c 72  t1\stable:\r\n\r
0120: 5c 6e 22 34 36 30 30 31 33 32 5c 73 31 32 38 39  \n"4600132\s1289
0130: 5c 73 31 32 37 35 5c 73 31 22 5c 72 5c 6e 5c 72  \s1275\s1"\r\n\r
0140: 5c 6e 57 68 65 6e 5c 73 49 5c 73 65 78 65 63 75  \nWhen\sI\sexecu
0150: 74 65 5c 73 74 68 65 5c 73 66 6f 6c 6c 6f 77 69  te\sthe\sfollowi
0160: 6e 67 5c 73 53 51 4c 5c 73 71 75 65 72 79 2c 5c  ng\sSQL\squery,\
0170: 73 74 68 69 73 5c 73 69 6e 64 65 78 5c 73 69 73  sthis\sindex\sis
0180: 5c 73 6e 6f 74 5c 73 75 73 65 64 5c 73 62 75 74  \snot\sused\sbut
0190: 5c 73 74 68 65 5c 73 71 75 65 72 79 5c 73 6f 70  \sthe\squery\sop
01a0: 74 69 6d 69 7a 65 72 5c 73 70 72 65 66 65 72 73  timizer\sprefers
01b0: 5c 73 74 6f 5c 73 75 73 65 5c 73 74 68 65 5c 73  \sto\suse\sthe\s
01c0: 70 72 69 6d 61 72 79 5c 73 69 6e 64 65 78 5c 73  primary\sindex\s
01d0: 77 68 69 63 68 5c 73 69 73 5c 73 6f 6e 5c 73 74  which\sis\son\st
01e0: 68 65 5c 73 63 6f 6c 75 6d 6e 33 2c 5c 73 77 68  he\scolumn3,\swh
01f0: 69 63 68 5c 73 69 73 5c 73 61 62 6f 75 74 5c 73  ich\sis\sabout\s
0200: 36 30 5c 73 74 69 6d 65 73 5c 73 73 6c 6f 77 65  60\stimes\sslowe
0210: 72 5c 73 74 68 61 6e 5c 73 75 73 69 6e 67 5c 73  r\sthan\susing\s
0220: 74 68 65 5c 73 69 6e 64 65 78 2e 5c 73 28 5c 73  the\sindex.\s(\s
0230: 32 30 30 30 30 5c 73 6d 73 5c 73 76 73 5c 73 33  20000\sms\svs\s3
0240: 30 30 5c 73 6d 73 29 5c 72 5c 6e 5c 72 5c 6e 22  00\sms)\r\n\r\n"
0250: 73 65 6c 65 63 74 5c 73 63 6f 6c 75 6d 6e 31 2c  select\scolumn1,
0260: 5c 73 63 6f 6c 75 6d 6e 32 2c 5c 73 63 6f 6c 75  \scolumn2,\scolu
0270: 6d 6e 33 5c 73 66 72 6f 6d 5c 73 74 61 62 6c 65  mn3\sfrom\stable
0280: 5c 73 77 68 65 72 65 5c 73 63 6f 6c 75 6d 6e 31  \swhere\scolumn1
0290: 5c 73 49 4e 5c 73 28 5c 73 69 6e 74 65 67 65 72  \sIN\s(\sinteger
02a0: 31 2c 5c 73 69 6e 74 65 67 65 72 32 2c 5c 73 2e  1,\sinteger2,\s.
02b0: 2e 2e 2c 5c 73 69 6e 74 65 67 65 72 33 30 5c 73  ..,\sinteger30\s
02c0: 29 5c 73 61 6e 64 5c 73 63 6f 6c 75 6d 6e 32 5c  )\sand\scolumn2\
02d0: 73 3d 5c 73 31 5c 73 6f 72 64 65 72 5c 73 62 79  s=\s1\sorder\sby
02e0: 5c 73 63 6f 6c 75 6d 6e 33 5c 73 6c 69 6d 69 74  \scolumn3\slimit
02f0: 5c 73 30 2c 32 30 30 22 5c 72 5c 6e 5c 72 5c 6e  \s0,200"\r\n\r\n
0300: 57 68 65 6e 5c 73 49 5c 73 70 75 74 5c 73 6c 65  When\sI\sput\sle
0310: 73 73 5c 73 69 6e 74 65 67 65 72 5c 73 76 61 6c  ss\sinteger\sval
0320: 75 65 73 5c 73 69 6e 5c 73 74 68 65 5c 73 49 4e  ues\sin\sthe\sIN
0330: 5c 73 6f 70 65 72 61 74 6f 72 5c 73 4f 52 5c 73  \soperator\sOR\s
0340: 72 65 6d 6f 76 65 5c 73 74 68 65 5c 73 22 6f 72  remove\sthe\s"or
0350: 64 65 72 5c 73 62 79 22 5c 73 70 61 72 74 5c 73  der\sby"\spart\s
0360: 66 72 6f 6d 5c 73 74 68 65 5c 73 71 75 65 72 79  from\sthe\squery
0370: 2c 5c 73 6d 79 5c 73 69 6e 64 65 78 5c 73 69 73  ,\smy\sindex\sis
0380: 5c 73 75 73 65 64 2e 5c 73 5c 72 5c 6e 5c 72 5c  \sused.\s\r\n\r\
0390: 6e 4f 52 5c 73 49 66 5c 73 49 5c 73 63 72 65 61  nOR\sIf\sI\screa
03a0: 74 65 5c 73 61 6e 5c 73 69 6e 64 65 78 5c 73 6f  te\san\sindex\so
03b0: 6e 6c 79 5c 73 6f 6e 5c 73 74 68 65 5c 73 63 6f  nly\son\sthe\sco
03c0: 6c 75 6d 6e 31 2c 5c 73 74 68 65 6e 5c 73 74 68  lumn1,\sthen\sth
03d0: 69 73 5c 73 69 6e 64 65 78 5c 73 69 73 5c 73 75  is\sindex\sis\su
03e0: 73 65 64 5c 73 66 6f 72 5c 73 74 68 65 5c 73 6f  sed\sfor\sthe\so
03f0: 72 69 67 69 6e 61 6c 5c 73 71 75 65 72 79 5c 73  riginal\squery\s
0400: 49 5c 73 77 72 6f 74 65 5c 73 61 62 6f 76 65 2c  I\swrote\sabove,
0410: 5c 73 77 68 69 63 68 5c 73 69 73 5c 73 61 6c 73  \swhich\sis\sals
0420: 6f 5c 73 76 65 72 79 5c 73 65 66 66 69 63 69 65  o\svery\sefficie
0430: 6e 74 2e 5c 72 5c 6e 5c 72 5c 6e 54 68 65 5c 73  nt.\r\n\r\nThe\s
0440: 53 51 4c 69 74 65 5c 73 76 65 72 73 69 6f 6e 5c  SQLite\sversion\
0450: 73 33 2e 36 5c 73 64 6f 65 73 5c 73 6e 6f 74 5c  s3.6\sdoes\snot\
0460: 73 68 61 76 65 5c 73 74 68 65 5c 73 73 61 6d 65  shave\sthe\ssame
0470: 5c 73 69 73 73 75 65 2e 5c 72 5c 6e 5c 72 5c 6e  \sissue.\r\n\r\n
0480: 54 68 65 5c 73 73 61 6d 65 5c 73 70 72 6f 62 6c  The\ssame\sprobl
0490: 65 6d 5c 73 68 61 64 5c 73 62 65 65 6e 5c 73 64  em\shad\sbeen\sd
04a0: 69 73 63 75 73 73 65 64 5c 73 61 5c 73 77 68 69  iscussed\sa\swhi
04b0: 6c 65 5c 73 61 67 6f 3a 5c 73 68 74 74 70 3a 2f  le\sago:\shttp:/
04c0: 2f 77 77 77 2e 6d 61 69 6c 2d 61 72 63 68 69 76  /www.mail-archiv
04d0: 65 2e 63 6f 6d 2f 73 71 6c 69 74 65 2d 75 73 65  e.com/sqlite-use
04e0: 72 73 25 34 30 73 71 6c 69 74 65 2e 6f 72 67 2f  rs%40sqlite.org/
04f0: 6d 73 67 37 34 34 31 32 2e 68 74 6d 6c 0a 4a 20  msg74412.html.J 
0500: 6c 6f 67 69 6e 20 6e 6f 62 6f 64 79 0a 4a 20 6d  login nobody.J m
0510: 69 6d 65 74 79 70 65 20 74 65 78 74 2f 70 6c 61  imetype text/pla
0520: 69 6e 0a 4a 20 70 72 69 76 61 74 65 5f 63 6f 6e  in.J private_con
0530: 74 61 63 74 20 31 34 63 64 64 66 62 34 39 61 61  tact 14cddfb49aa
0540: 64 66 34 31 31 62 63 33 30 66 35 31 35 33 37 62  df411bc30f51537b
0550: 61 65 61 31 34 38 64 33 33 63 33 31 61 0a 4a 20  aea148d33c31a.J 
0560: 73 65 76 65 72 69 74 79 20 43 72 69 74 69 63 61  severity Critica
0570: 6c 0a 4a 20 73 74 61 74 75 73 20 4f 70 65 6e 0a  l.J status Open.
0580: 4a 20 74 69 74 6c 65 20 4d 75 6c 74 69 2d 63 6f  J title Multi-co
0590: 6c 75 6d 6e 5c 73 69 6e 64 65 78 5c 73 69 73 5c  lumn\sindex\sis\
05a0: 73 6e 6f 74 5c 73 75 73 65 64 5c 73 77 69 74 68  snot\sused\swith
05b0: 5c 73 49 4e 5c 73 6f 70 65 72 61 74 6f 72 0a 4a  \sIN\soperator.J
05c0: 20 74 79 70 65 20 50 65 72 66 6f 72 6d 61 6e 63   type Performanc
05d0: 65 5f 49 73 73 75 65 0a 4b 20 37 63 36 61 30 31  e_Issue.K 7c6a01
05e0: 63 36 63 35 61 65 37 37 64 65 39 31 38 32 32 64  c6c5ae77de91822d
05f0: 38 31 32 34 30 39 63 35 36 38 65 37 38 64 31 38  812409c568e78d18
0600: 30 65 0a 55 20 0a 5a 20 38 38 62 37 38 30 30 31  0e.U .Z 88b78001
0610: 62 64 66 39 63 63 61 63 62 37 39 64 36 32 39 64  bdf9ccacb79d629d
0620: 30 39 62 66 38 31 30 62 0a                       09bf810b.