Knowledge

Database index

Source đź“ť

241:. An index may be declared as UNIQUE, which creates an implicit constraint on the underlying table. Database systems usually implicitly create an index on a set of columns declared PRIMARY KEY, and some are capable of using an already-existing index to police this constraint. Many database systems require that both referencing and referenced sets of columns in a FOREIGN KEY constraint are indexed, thus improving performance of inserts, updates and deletes to the tables participating in the constraint. 682: 1593: 302:(not to be confused with clustered index described previously). The records for the tables sharing the value of a cluster key shall be stored together in the same or nearby data blocks. This may improve the joins of these tables on the cluster key, since the matching records are stored together and less I/O is required to locate them. The cluster configuration defines the data layout in the tables that are parts of the cluster. A cluster can be keyed with a 568:, are most efficient if the values they index do not repeat or repeat a small number of times. In contrast, the bitmap index is designed for cases where the values of a variable repeat very frequently. For example, the sex field in a customer database usually contains at most three distinct values: male, female or unknown (not recorded). For such variables, the bitmap index can have a significant performance advantage over the commonly used trees. 1603: 25: 1613: 433:. This query would yield an email address for every customer whose email address ends with "@wikipedia.org", but even if the email_address column has been indexed the database must perform a full index scan. This is because the index is built with the assumption that words go from left to right. With a 322:
For example, in a phone book organized by city first, then by last name, and then by first name, in a particular city, one can easily extract the list of all phone numbers. However, it would be very tedious to find all the phone numbers for a particular last name. One would have to look within each
262:
is specified by the index. The data rows may be spread throughout the table regardless of the value of the indexed column or expression. The non-clustered index tree contains the index keys in sorted order, with the leaf level of the index containing the pointer to the record (page and the row number
285:
Clustering alters the data block into a certain distinct order to match the index, resulting in the row data being stored in order. Therefore, only one clustered index can be created on a given database table. Clustered indices can greatly increase overall speed of retrieval, but usually only where
843:
A covering index can dramatically speed up data retrieval but may itself be large due to the additional keys, which slow down data insertion and update. To reduce such index size, some systems allow including non-key fields in the index. Non-key fields are not themselves part of the index ordering
244:
Some database systems support an EXCLUSION constraint that ensures that, for a newly inserted or updated record, a certain predicate holds for no other record. This can be used to implement a UNIQUE constraint (with equality predicate) or more complex constraints, like ensuring that no overlapping
145:
An index is a copy of selected columns of data, from a table, that is designed to enable very efficient search. An index normally includes a "key" or direct link to the original row of data from which it was copied, to allow the complete row to be retrieved efficiently. Some databases extend the
289:
Since the physical records are in this sort order on disk, the next row item in the sequence is immediately before or after the last one, and so fewer data block reads are required. The primary feature of a clustered index is therefore the ordering of the physical data rows in accordance with the
665:
It is used to index fields that are neither ordering fields nor key fields (there is no assurance that the file is organized on key field or primary key field). One index entry for every tuple in the data file (dense index) contains the value of the indexed attribute and pointer to the block or
318:
The order that the index definition defines the columns in is important. It is possible to retrieve a set of row identifiers using only the first indexed column. However, it is not possible or efficient (on most databases) to retrieve the set of row identifiers using only the second or greater
197:
Suppose a database contains N data items and one must be retrieved based on the value of one of the fields. A simple implementation retrieves and examines each item according to the test. If there is only one matching item, this can stop when it finds that single item, but if there are multiple
634:
A reverse-key index reverses the key value before entering it in the index. E.g., the value 24538 becomes 83542 in the index. Reversing the key value is particularly useful for indexing data such as sequence numbers, where new key values monotonically increase.
133:
at the cost of additional writes and storage space to maintain the index data structure. Indexes are used to quickly locate data without having to search every row in a database table every time said table is accessed. Indexes can be created using one or more
894:
No standard defines how to create indexes, because the ISO SQL Standard does not cover physical aspects. Indexes are one of the physical parts of database conception among others like storage (tablespace or filegroups). RDBMS vendors all give a
770:. While in principle indexes can utilize the common database concurrency control methods, specialized concurrency control methods for indexes exist, which are applied in conjunction with the common methods for a substantial performance gain. 751:
of the clustered index corresponds to the actual data, not simply a pointer to data that resides elsewhere, as is the case with a non-clustered index. Each relation can have a single clustered index and many unclustered indices.
836:
To find the Name for ID 13, an index on (ID) is useful, but the record must still be read to get the Name. However, an index on (ID, Name) contains the required data field and eliminates the need to look up the record.
778:
In most cases, an index is used to quickly locate the data records from which the required data is read. In other words, the index is only used to locate data records in the table and not to return data.
657:
The primary index contains the key fields of the table and a pointer to the non-key fields of the table. The primary index is created automatically when the table is created in the database.
245:
time ranges or no intersecting geometry objects would be stored in the table. An index supporting fast searching for records satisfying the predicate is required to police such a constraint.
290:
index blocks that point to them. Some databases separate the data and index blocks into separate files, others put two completely different data blocks within the same physical file(s).
840:
Covering indexes are each for a specific table. Queries which JOIN/ access across multiple tables, may potentially consider covering indexes on more than one of these tables.
213:
used for this purpose. There are complex design trade-offs involving lookup performance, index size, and index-update performance. Many index designs exhibit logarithmic (
674:
A hash index in database is most commonly used index in data management. It is created on a column that contains unique values, such as a primary key or email address.
533: 162:, where index entries are created only for those records that satisfy some conditional expression. A further aspect of flexibility is to permit indexing on 1203: 437:
at the beginning of the search-term, the database software is unable to use the underlying index data structure (in other words, the WHERE-clause is
1186: 392:. To process this statement without an index the database software must look at the last_name column on every row in the table (this is known as a 1198: 1116: 206:. Since databases may contain many objects, and since lookup is a common operation, it is often desirable to improve performance. 782:
A covering index is a special case where the index itself contains the required data fields and can answer the required data.
1006: 286:
the data is accessed sequentially in the same or reverse order of the clustered index, or when a range of items is selected.
89: 1637: 1596: 61: 1269: 1158: 334:), if we search by giving exact values for all the three fields, search time is minimal—but if we provide the values for 1647: 958: 68: 108: 146:
power of indexing by letting developers create indexes on column values that have been transformed by functions or
323:
city's section for the entries with that last name. Some databases can do this, others just won't use the index.
1616: 1322: 1060:
Daren Bieniek; Randy Dess; Mike Hotek; Javier Loria; Adam Machanic; Antonio Soto; Adolfo Wiernik (January 2006).
992: 42: 75: 1573: 1220: 585: 46: 1512: 400:) until the Smith entry has been found; this is much less computationally expensive than a full table scan. 350:. So, to improve the performance, one must ensure that the index is created on the order of search columns. 504:, the index available on this field is not used. Rather only a sequential search is performed, which takes 57: 1507: 649:
An inverted index maps a content word to the document containing it, thereby allowing full-text searches.
1538: 1257: 766:
An index is typically being accessed concurrently by several transactions and processes, and thus needs
1461: 1451: 1227: 327: 1548: 1281: 692: 589: 1028: 273:
The indexed columns are typically non-primary key columns used in JOIN, WHERE, and ORDER BY clauses.
1090: 1078: 210: 147: 198:
matches, it must test everything. This means that the number of operations in the average case is
1497: 1151: 947: 844:
but only included at the leaf level, allowing for a covering index with less overall index size.
209:
An index is any data structure that improves the performance of lookup. There are many different
35: 358:
Indexes are useful for many applications but come with some limitations. Consider the following
1578: 1533: 1210: 927: 310:. The data block where the table record is stored is defined by the value of the cluster key. 1553: 1307: 163: 82: 1606: 1543: 1425: 1395: 1264: 1215: 971: 744: 616:
in the sorted data file. In clustered indices with duplicate keys, the sparse index points
609: 230: 596:
in the sorted data file. In clustered indices with duplicate keys, the dense index points
509: 8: 1563: 1456: 1441: 1368: 1193: 1042: 767: 346:
field to retrieve all matched records. Then a sequential lookup checks the matching with
728:
Indices can be implemented using a variety of data structures. Popular indices include
1642: 1558: 1502: 1471: 1420: 1312: 1252: 1144: 1016: 434: 217:(log(N))) lookup performance and in some applications it is possible to achieve flat ( 1378: 1232: 1002: 561: 135: 592:
in the data file. Every key in this file is associated with a particular pointer to
396:). With an index the database simply follows the index data structure (typically a 1568: 1415: 1405: 1373: 1061: 263:
in the data page in page-organized engines; row offset in file-organized engines).
130: 1476: 1446: 1400: 1181: 612:
in the data file. Every key in this file is associated with a particular pointer
556:
A bitmap index is a special kind of indexing that stores the bulk of its data as
393: 184: 904:
syntax with some specific options that depend on their software's capabilities.
608:
A sparse index in databases is a file with pairs of keys and pointers for every
1528: 1466: 1383: 1276: 1237: 979: 975: 921: 717: 644: 444:). This problem can be solved through the addition of another index created on 218: 214: 199: 126: 1136: 1631: 1347: 1332: 1059: 916: 761: 729: 629: 581: 191: 159: 551: 500:
When the wildcard characters are used on both sides of the search word as
166:, as well as expressions formed from an assortment of built-in functions. 1337: 1317: 238: 203: 681: 1481: 1390: 1352: 1327: 998: 737: 307: 298:
When multiple databases and multiple tables are joined, it is called a
234: 748: 557: 158:
field in the index. Another option sometimes supported is the use of
277:
There can be more than one non-clustered index on a database table.
24: 1342: 1297: 1167: 733: 577: 565: 493:. This puts the wild-card at the right-most part of the query (now 440: 180: 270:
The physical order of the rows is not the same as the index order.
1247: 397: 303: 187: 139: 1072: 1242: 1302: 564:
on these bitmaps. The most commonly used indexes, such as
497:), which the index on reverse(email_address) can satisfy. 248: 129:
that improves the speed of data retrieval operations on a
359: 154:, which would only store the upper-case versions of the 785:
Consider the following table (other fields omitted):
512: 224: 1117:"Create indexes with included columns - SQL Server" 994:
Chapter 8: Building Fast-Performing Database Models
183:software includes indexing technology that enables 49:. Unsourced material may be challenged and removed. 716:Another type of index used in database systems is 527: 16:Data structure for query optimization in databases 560:(bitmaps) and answers most queries by performing 1629: 258:The data is present in arbitrary order, but the 1166: 941: 353: 961:Oracle® Database Concepts 10g Release 1 (10.1) 952: 1152: 1091:"11.9. Index-Only Scans and Covering Indexes" 1066:SQL Server 2005 Implementation and Management 1047:SQL Server 2005 Books Online (September 2007) 990: 948:PostgreSQL 9.1.2 Documentation: CREATE TABLE 755: 150:. For example, an index could be created on 138:, providing the basis for both rapid random 1159: 1145: 174: 142:and efficient access of ordered records. 109:Learn how and when to remove this message 723: 1114: 1079:Covering Indexes for Query Optimization 249:Index architecture and indexing methods 1630: 1140: 970:Database Systems: The Complete Book. 676: 194:is inefficient for large databases. 47:adding citations to reliable sources 18: 1612: 540: 13: 930: â€“ Method for data management 889: 660: 14: 1659: 773: 711: 638: 326:In the phone book example with a 225:Policing the database constraints 1611: 1601: 1592: 1591: 680: 652: 623: 253: 23: 1602: 603: 545: 342:only, the search uses only the 313: 34:needs additional citations for 1108: 1083: 1053: 1035: 984: 964: 924: â€“ Type of database index 571: 522: 516: 1: 1062:"Chapter 4: Creating Indices" 934: 847:This can be done in SQL with 669: 403:Consider this SQL statement: 233:, such as UNIQUE, EXCLUSION, 1043:"Clustered Index Structures" 354:Applications and limitations 280: 7: 1638:Database management systems 1168:Database management systems 910: 448:and a SQL query like this: 332:city, last_name, first_name 229:Indexes are used to police 190:to improve performance, as 136:columns of a database table 10: 1664: 1574:Object–relational database 759: 642: 627: 562:bitwise logical operations 549: 293: 266:In a non-clustered index, 1648:Database index techniques 1587: 1549:Federated database system 1521: 1490: 1434: 1361: 1290: 1282:Blockchain-based database 1174: 896: 848: 756:Index concurrency control 487:'%@wikipedia.org' 449: 445: 427:'%@wikipedia.org' 404: 363: 1095:PostgreSQL Documentation 618:to the lowest search key 330:created on the columns ( 169: 584:with pairs of keys and 175:Support for fast lookup 1579:Transaction processing 1534:Database normalization 1477:Query rewriting system 928:Search engine indexing 689:This section is empty. 529: 446:reverse(email_address) 164:user-defined functions 1554:Referential integrity 991:Gavin Powell (2006). 724:Index implementations 530: 1544:Distributed database 972:Hector Garcia-Molina 959:Overview of Clusters 745:Microsoft SQL Server 528:{\displaystyle O(N)} 510: 231:database constraints 43:improve this article 1564:Relational calculus 1442:Concurrency control 1121:learn.microsoft.com 768:concurrency control 598:to the first record 1559:Relational algebra 1503:Query optimization 1308:Armstrong's axioms 1068:. Microsoft Press. 525: 221:(1)) performance. 1625: 1624: 1233:Wide-column store 1228:Document-oriented 1049:. 4 October 2012. 1008:978-0-7645-7490-0 980:Jennifer D. Widom 976:Jeffrey D. Ullman 834: 833: 709: 708: 576:A dense index in 119: 118: 111: 93: 1655: 1615: 1614: 1605: 1604: 1595: 1594: 1569:Relational model 1539:Database storage 1416:Stored procedure 1161: 1154: 1147: 1138: 1137: 1131: 1130: 1128: 1127: 1112: 1106: 1105: 1103: 1102: 1087: 1081: 1076: 1070: 1069: 1057: 1051: 1050: 1039: 1033: 1032: 1026: 1022: 1020: 1012: 988: 982: 968: 962: 956: 950: 945: 903: 902: 899: 885: 884: 881: 878: 875: 872: 869: 866: 863: 860: 857: 854: 851: 788: 787: 704: 701: 691:You can help by 684: 677: 541:Types of indexes 536: 534: 532: 531: 526: 496: 492: 491: 488: 485: 482: 479: 476: 473: 470: 467: 464: 461: 458: 455: 452: 447: 432: 431: 428: 425: 422: 419: 416: 413: 410: 407: 391: 390: 387: 384: 381: 378: 375: 372: 369: 366: 349: 345: 341: 337: 333: 319:indexed column. 260:logical ordering 157: 153: 152:upper(last_name) 114: 107: 103: 100: 94: 92: 58:"Database index" 51: 27: 19: 1663: 1662: 1658: 1657: 1656: 1654: 1653: 1652: 1628: 1627: 1626: 1621: 1583: 1529:Database models 1517: 1486: 1472:Query optimizer 1447:Data dictionary 1430: 1401:Transaction log 1357: 1313:Codd's 12 rules 1286: 1216:Column-oriented 1182:Object-oriented 1170: 1165: 1135: 1134: 1125: 1123: 1113: 1109: 1100: 1098: 1089: 1088: 1084: 1077: 1073: 1058: 1054: 1041: 1040: 1036: 1024: 1023: 1014: 1013: 1009: 999:Wrox Publishing 989: 985: 969: 965: 957: 953: 946: 942: 937: 913: 907: 900: 897: 892: 890:Standardization 882: 879: 876: 873: 870: 867: 864: 861: 858: 855: 852: 849: 776: 764: 758: 726: 714: 705: 699: 696: 672: 663: 661:Secondary index 655: 647: 641: 632: 626: 620:in each block. 606: 600:with that key. 574: 554: 548: 543: 511: 508: 507: 505: 502:%wikipedia.org% 495:gro.aidepikiw@% 494: 489: 486: 483: 480: 477: 474: 471: 468: 465: 462: 459: 456: 453: 450: 429: 426: 423: 420: 417: 414: 411: 408: 405: 394:full table scan 388: 386:'Smith' 385: 382: 379: 376: 373: 370: 367: 364: 356: 347: 343: 339: 335: 331: 328:composite index 316: 296: 283: 256: 251: 227: 211:data structures 185:sub-linear time 177: 172: 155: 151: 115: 104: 98: 95: 52: 50: 40: 28: 17: 12: 11: 5: 1661: 1651: 1650: 1645: 1640: 1623: 1622: 1620: 1619: 1609: 1599: 1588: 1585: 1584: 1582: 1581: 1576: 1571: 1566: 1561: 1556: 1551: 1546: 1541: 1536: 1531: 1525: 1523: 1522:Related topics 1519: 1518: 1516: 1515: 1510: 1505: 1500: 1498:Administration 1494: 1492: 1488: 1487: 1485: 1484: 1479: 1474: 1469: 1467:Query language 1464: 1459: 1454: 1449: 1444: 1438: 1436: 1432: 1431: 1429: 1428: 1423: 1418: 1413: 1408: 1403: 1398: 1393: 1388: 1387: 1386: 1381: 1376: 1365: 1363: 1359: 1358: 1356: 1355: 1350: 1345: 1340: 1335: 1330: 1325: 1320: 1315: 1310: 1305: 1300: 1294: 1292: 1288: 1287: 1285: 1284: 1279: 1274: 1273: 1272: 1262: 1261: 1260: 1250: 1245: 1240: 1235: 1230: 1225: 1224: 1223: 1213: 1208: 1207: 1206: 1201: 1191: 1190: 1189: 1178: 1176: 1172: 1171: 1164: 1163: 1156: 1149: 1141: 1133: 1132: 1107: 1082: 1071: 1052: 1034: 1007: 983: 963: 951: 939: 938: 936: 933: 932: 931: 925: 922:Inverted index 919: 912: 909: 891: 888: 832: 831: 828: 825: 821: 820: 817: 814: 810: 809: 806: 803: 799: 798: 795: 792: 775: 774:Covering index 772: 760:Main article: 757: 754: 730:balanced trees 725: 722: 718:linear hashing 713: 712:Linear hashing 710: 707: 706: 687: 685: 671: 668: 662: 659: 654: 651: 645:Inverted index 643:Main article: 640: 639:Inverted index 637: 628:Main article: 625: 622: 605: 602: 573: 570: 550:Main article: 547: 544: 542: 539: 524: 521: 518: 515: 355: 352: 315: 312: 295: 292: 282: 279: 275: 274: 271: 255: 252: 250: 247: 226: 223: 176: 173: 171: 168: 131:database table 127:data structure 123:database index 117: 116: 31: 29: 22: 15: 9: 6: 4: 3: 2: 1660: 1649: 1646: 1644: 1641: 1639: 1636: 1635: 1633: 1618: 1610: 1608: 1600: 1598: 1590: 1589: 1586: 1580: 1577: 1575: 1572: 1570: 1567: 1565: 1562: 1560: 1557: 1555: 1552: 1550: 1547: 1545: 1542: 1540: 1537: 1535: 1532: 1530: 1527: 1526: 1524: 1520: 1514: 1511: 1509: 1506: 1504: 1501: 1499: 1496: 1495: 1493: 1489: 1483: 1480: 1478: 1475: 1473: 1470: 1468: 1465: 1463: 1460: 1458: 1455: 1453: 1450: 1448: 1445: 1443: 1440: 1439: 1437: 1433: 1427: 1424: 1422: 1419: 1417: 1414: 1412: 1409: 1407: 1404: 1402: 1399: 1397: 1394: 1392: 1389: 1385: 1382: 1380: 1377: 1375: 1372: 1371: 1370: 1367: 1366: 1364: 1360: 1354: 1351: 1349: 1348:Surrogate key 1346: 1344: 1341: 1339: 1336: 1334: 1333:Candidate key 1331: 1329: 1326: 1324: 1321: 1319: 1316: 1314: 1311: 1309: 1306: 1304: 1301: 1299: 1296: 1295: 1293: 1289: 1283: 1280: 1278: 1275: 1271: 1268: 1267: 1266: 1263: 1259: 1256: 1255: 1254: 1251: 1249: 1246: 1244: 1241: 1239: 1236: 1234: 1231: 1229: 1226: 1222: 1219: 1218: 1217: 1214: 1212: 1209: 1205: 1202: 1200: 1197: 1196: 1195: 1192: 1188: 1185: 1184: 1183: 1180: 1179: 1177: 1173: 1169: 1162: 1157: 1155: 1150: 1148: 1143: 1142: 1139: 1122: 1118: 1115:MikeRayMSFT. 1111: 1096: 1092: 1086: 1080: 1075: 1067: 1063: 1056: 1048: 1044: 1038: 1030: 1018: 1010: 1004: 1000: 996: 995: 987: 981: 977: 973: 967: 960: 955: 949: 944: 940: 929: 926: 923: 920: 918: 917:Index locking 915: 914: 908: 905: 887: 845: 841: 838: 829: 826: 823: 822: 818: 815: 812: 811: 807: 804: 801: 800: 797:Other Fields 796: 793: 790: 789: 786: 783: 780: 771: 769: 763: 762:Index locking 753: 750: 746: 741: 739: 735: 731: 721: 719: 703: 694: 690: 686: 683: 679: 678: 675: 667: 658: 653:Primary index 650: 646: 636: 631: 630:Reverse index 624:Reverse index 621: 619: 615: 611: 601: 599: 595: 591: 587: 583: 579: 569: 567: 563: 559: 553: 538: 519: 513: 503: 498: 472:email_address 454:email_address 443: 442: 436: 421:email_address 409:email_address 401: 399: 395: 361: 351: 329: 324: 320: 311: 309: 305: 301: 291: 287: 278: 272: 269: 268: 267: 264: 261: 254:Non-clustered 246: 242: 240: 236: 232: 222: 220: 216: 212: 207: 205: 201: 195: 193: 192:linear search 189: 186: 182: 167: 165: 161: 160:partial index 149: 143: 141: 137: 132: 128: 124: 113: 110: 102: 91: 88: 84: 81: 77: 74: 70: 67: 63: 60: â€“  59: 55: 54:Find sources: 48: 44: 38: 37: 32:This article 30: 26: 21: 20: 1410: 1124:. Retrieved 1120: 1110: 1099:. Retrieved 1097:. 2023-02-09 1094: 1085: 1074: 1065: 1055: 1046: 1037: 993: 986: 966: 954: 943: 906: 893: 846: 842: 839: 835: 784: 781: 777: 765: 742: 727: 715: 697: 693:adding to it 688: 673: 664: 656: 648: 633: 617: 614:to the block 613: 607: 604:Sparse index 597: 593: 575: 555: 552:Bitmap index 546:Bitmap index 501: 499: 438: 402: 357: 325: 321: 317: 314:Column order 299: 297: 288: 284: 276: 265: 259: 257: 243: 228: 208: 196: 178: 144: 122: 120: 105: 96: 86: 79: 72: 65: 53: 41:Please help 36:verification 33: 1617:WikiProject 1508:Replication 1396:Transaction 1338:Foreign key 1318:CAP theorem 1265:Multi-model 1025:|work= 572:Dense index 362:statement: 306:index or a 239:FOREIGN KEY 235:PRIMARY KEY 204:linear time 148:expressions 1632:Categories 1482:Query plan 1435:Components 1353:Unique key 1270:comparison 1204:comparison 1194:Relational 1187:comparison 1126:2023-04-08 1101:2023-04-08 935:References 700:April 2023 670:Hash index 588:for every 558:bit arrays 368:first_name 348:first_name 340:first_name 308:hash table 69:newspapers 1643:Databases 1491:Functions 1426:Partition 1253:In-memory 1211:Key–value 1027:ignored ( 1017:cite book 749:leaf node 578:databases 460:customers 415:customers 380:last_name 281:Clustered 156:last_name 1597:Category 1513:Sharding 1369:Relation 1343:Superkey 1298:Database 1291:Concepts 911:See also 862:my_table 856:my_index 734:B+ trees 666:record. 594:a record 586:pointers 566:B+ trees 441:sargable 435:wildcard 181:database 99:May 2024 1607:Outline 1406:Trigger 1362:Objects 874:INCLUDE 535:⁠ 506:⁠ 481:reverse 466:reverse 300:cluster 294:Cluster 202:(N) or 140:lookups 83:scholar 1421:Cursor 1379:column 1248:NewSQL 1005:  898:CREATE 850:CREATE 747:, the 738:hashes 590:record 537:time. 451:SELECT 406:SELECT 398:B-tree 374:people 365:SELECT 304:B-tree 188:lookup 85:  78:  71:  64:  56:  1411:Index 1374:table 1277:Cloud 1243:NoSQL 1238:Graph 1175:Types 901:INDEX 853:INDEX 827:Fuse 816:Lamp 805:Plug 794:Name 610:block 580:is a 463:WHERE 418:WHERE 377:WHERE 338:and 179:Most 170:Usage 125:is a 90:JSTOR 76:books 1462:ODBC 1452:JDBC 1391:View 1328:Null 1323:CRUD 1303:ACID 1258:list 1221:list 1199:list 1029:help 1003:ISBN 880:name 830:... 819:... 808:... 736:and 582:file 478:LIKE 457:FROM 439:not 424:LIKE 412:FROM 371:FROM 344:city 336:city 237:and 62:news 1457:XQJ 1384:row 824:14 813:13 802:12 791:ID 743:In 695:. 360:SQL 45:by 1634:: 1119:. 1093:. 1064:. 1045:. 1021:: 1019:}} 1015:{{ 1001:. 997:. 978:, 974:, 886:. 883:); 868:id 859:ON 740:. 732:, 720:. 490:); 121:A 1160:e 1153:t 1146:v 1129:. 1104:. 1031:) 1011:. 877:( 871:) 865:( 702:) 698:( 523:) 520:N 517:( 514:O 484:( 475:) 469:( 430:; 389:; 383:= 219:O 215:O 200:O 112:) 106:( 101:) 97:( 87:· 80:· 73:· 66:· 39:.

Index


verification
improve this article
adding citations to reliable sources
"Database index"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
data structure
database table
columns of a database table
lookups
expressions
partial index
user-defined functions
database
sub-linear time
lookup
linear search
O
linear time
data structures
O
O
database constraints
PRIMARY KEY
FOREIGN KEY

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑