Knowledge

QUEL query languages

Source 📝

22: 348:
Here E is a tuple variable that ranges over the EMPLOYEE relation, and all tuples in that relation are found which satisfy the qualification `E.Name = "Jones"`. The result of the query is a new relation W, which has a single domain COMP that has been calculated for each qualifying tuple. Additional
244:
gained market share in the early 1980s, most companies then supporting QUEL moved to SQL instead. QUEL continues to be available as a part of the Ingres DBMS, although no QUEL-specific language enhancements have been added for many years.
450:
Here is a sample of a simple session that creates a table, inserts a row into it, and then retrieves and modifies the data inside it and finally deletes the row that was added (assuming that name is a unique field).
446:
In this example, the relation is being stored in a new table W. This is not a direct analog of the QUEL version; relations in QUEL are more similar to temporary tables seen in most modern SQL implementations.
1074:
reverses the process. Similar commands are available in many SQL systems, but usually as external tools, as opposed to being internal to the SQL language. This makes them unavailable to
1081:
QUEL has an extremely powerful aggregation capability. Aggregates can be nested, and different aggregates can have independent by-lists and/or restriction clauses. For example:
232:. QUEL was used for a short time in most products based on the freely available Ingres source code, most notably in an implementation called POSTQUEL supported by 1066:
which creates a comma-delimited file of all the records in the student table. The d1 indicates a delimiter, as opposed to a data type. Changing the
1573: 1339: 1208:
This example illustrates one of the arguably less desirable quirks of QUEL, namely that all string comparisons are potentially pattern matches.
257:, which can be used to limit queries or return result sets. Consider this example, taken from one of the first original Ingres papers: 1367: 86: 58: 1475: 1440: 948:
Another feature of QUEL was a built-in system for moving records en-masse into and out of the system. Consider this command:
39: 65: 1558: 165: 219: 72: 105: 54: 43: 1360: 1455: 1395: 227: 185: 1465: 1521: 1445: 1410: 1400: 1237: 204: 1563: 1450: 1430: 1353: 1312: 79: 1405: 32: 1415: 1307: 1298:; Wong, Eugene; Kreps, Peter; Held, Gerald (1976). "The Design and Implementation of INGRES". 1516: 1500: 1460: 1281: 8: 1568: 1295: 1268: 1248: 197: 139: 1243: 212: 172: 1317: 1075: 1272: 237: 134: 1376: 200: 127: 1552: 223: 1321: 21: 233: 1345: 1537: 1425: 1420: 241: 1490: 1480: 1495: 1435: 215: 1485: 1390: 208: 1294: 46:. Unsourced material may be challenged and removed. 349:queries can then be made against the relation W. 1550: 1267: 1361: 1228:is used when pattern matching is required. 1368: 1354: 1311: 226:'s earlier suggested but not implemented 106:Learn how and when to remove this message 1340:A Critique of the SQL Database Language 1574:Relational database management systems 1551: 1284:on Management of Data. Washington, DC. 253:QUEL statements are always defined by 1349: 1300:ACM Transactions on Database Systems 44:adding citations to reliable sources 15: 1375: 211:. It was created as a part of the 13: 1342:. SIGMOD Record 14(3): 8-54, 1984. 1332: 220:University of California, Berkeley 14: 1585: 352:An equivalent SQL statement is: 20: 1225: 1221: 1217: 1213: 1209: 1071: 1067: 31:needs additional citations for 1288: 1261: 1224:only for exact matches, while 1: 1254: 207:, with some similarities to 7: 1559:Database management systems 1231: 151:; 48 years ago 10: 1590: 1530: 1509: 1383: 1238:D4 (programming language) 205:tuple relational calculus 184: 179: 171: 163: 145: 133: 123: 1240:(an implementation of D) 1220:. In contrast, SQL uses 1083: 1061:"/student.txt" 950: 714: 465: 354: 259: 248: 1271:; Rowe, LA (May 1986). 1210:y.str = "ii*" 229:Data Sub-Language ALPHA 1274:The design of POSTGRES 55:"QUEL query languages" 1322:10.1145/320473.320476 1282:ACM SIGMOD Conference 1216:values starting with 1296:Stonebraker, Michael 40:improve this article 1249:Relational calculus 198:relational database 146:First appeared 140:Michael Stonebraker 120: 1244:Relational algebra 708:"philip" 558:"philip" 118: 1546: 1545: 1076:stored procedures 946: 945: 343:"Jones" 191: 190: 116: 115: 108: 90: 1581: 1370: 1363: 1356: 1347: 1346: 1326: 1325: 1315: 1292: 1286: 1285: 1279: 1265: 1227: 1223: 1219: 1215: 1211: 1204: 1201: 1198: 1195: 1192: 1189: 1186: 1183: 1180: 1177: 1174: 1171: 1168: 1165: 1162: 1159: 1156: 1153: 1150: 1147: 1144: 1141: 1138: 1135: 1132: 1129: 1126: 1123: 1120: 1117: 1114: 1111: 1108: 1105: 1102: 1099: 1096: 1093: 1090: 1087: 1073: 1069: 1062: 1059: 1056: 1053: 1050: 1047: 1044: 1041: 1038: 1035: 1032: 1029: 1026: 1023: 1020: 1017: 1014: 1011: 1008: 1005: 1002: 999: 996: 993: 990: 987: 984: 981: 978: 975: 972: 969: 966: 963: 960: 957: 954: 940: 937: 936:'philip' 934: 931: 928: 925: 922: 919: 916: 913: 910: 907: 904: 901: 898: 895: 892: 889: 886: 883: 880: 877: 874: 871: 868: 865: 862: 859: 856: 853: 850: 847: 844: 841: 838: 835: 832: 829: 826: 825:'philip' 823: 820: 817: 814: 811: 808: 805: 802: 799: 796: 793: 790: 787: 784: 781: 778: 775: 772: 769: 766: 763: 760: 757: 754: 751: 748: 745: 742: 739: 736: 733: 730: 727: 724: 721: 718: 709: 706: 703: 700: 697: 694: 691: 688: 685: 682: 679: 676: 673: 670: 667: 664: 661: 658: 655: 652: 649: 646: 643: 640: 637: 634: 631: 628: 625: 622: 619: 616: 613: 610: 607: 604: 601: 598: 595: 592: 589: 586: 583: 580: 577: 574: 571: 568: 565: 562: 559: 556: 553: 550: 547: 544: 541: 538: 535: 532: 529: 526: 523: 520: 517: 514: 511: 508: 505: 502: 499: 496: 493: 490: 487: 484: 481: 478: 475: 472: 469: 454: 453: 442: 439: 436: 433: 430: 427: 424: 421: 418: 415: 412: 409: 406: 403: 400: 397: 394: 391: 388: 385: 382: 379: 376: 373: 370: 367: 364: 361: 358: 344: 341: 338: 335: 332: 329: 326: 323: 320: 317: 314: 311: 308: 305: 302: 299: 296: 293: 290: 287: 284: 281: 278: 275: 272: 269: 266: 263: 159: 157: 152: 135:Designed by 121: 117: 111: 104: 100: 97: 91: 89: 48: 24: 16: 1589: 1588: 1584: 1583: 1582: 1580: 1579: 1578: 1564:Query languages 1549: 1548: 1547: 1542: 1526: 1505: 1379: 1377:Query languages 1374: 1335: 1333:Further reading 1330: 1329: 1293: 1289: 1277: 1266: 1262: 1257: 1234: 1206: 1205: 1202: 1199: 1196: 1193: 1190: 1187: 1184: 1181: 1178: 1175: 1172: 1169: 1166: 1163: 1160: 1158:"foo" 1157: 1154: 1151: 1148: 1145: 1142: 1140:"ii*" 1139: 1136: 1133: 1130: 1127: 1124: 1121: 1118: 1115: 1112: 1109: 1106: 1103: 1100: 1097: 1094: 1091: 1088: 1085: 1064: 1063: 1060: 1057: 1054: 1051: 1048: 1045: 1042: 1039: 1036: 1033: 1030: 1027: 1024: 1021: 1018: 1015: 1012: 1009: 1006: 1003: 1000: 997: 994: 991: 988: 985: 982: 979: 976: 973: 970: 967: 964: 961: 958: 955: 952: 942: 941: 938: 935: 932: 929: 926: 923: 920: 917: 914: 911: 908: 905: 902: 899: 896: 893: 890: 887: 884: 881: 878: 875: 872: 869: 866: 863: 860: 857: 854: 851: 848: 845: 842: 839: 836: 833: 830: 827: 824: 821: 818: 815: 812: 809: 806: 803: 800: 797: 794: 791: 788: 785: 782: 779: 776: 773: 770: 767: 764: 761: 758: 755: 752: 749: 746: 743: 740: 737: 734: 731: 728: 725: 722: 719: 716: 711: 710: 707: 704: 701: 698: 695: 692: 689: 686: 683: 680: 677: 674: 671: 668: 665: 662: 659: 656: 653: 650: 647: 644: 641: 638: 635: 632: 629: 626: 623: 620: 617: 614: 611: 608: 605: 602: 599: 596: 593: 590: 587: 584: 581: 578: 575: 572: 569: 566: 563: 560: 557: 554: 551: 548: 545: 542: 539: 536: 533: 530: 527: 524: 521: 518: 515: 512: 509: 506: 503: 500: 497: 494: 491: 488: 485: 482: 479: 476: 473: 470: 467: 444: 443: 441:'Jones' 440: 437: 434: 431: 428: 425: 422: 419: 416: 413: 410: 407: 404: 401: 398: 395: 392: 389: 386: 383: 380: 377: 374: 371: 368: 365: 362: 359: 356: 346: 345: 342: 339: 336: 333: 330: 327: 324: 321: 318: 315: 312: 309: 306: 303: 300: 297: 294: 291: 288: 285: 282: 279: 276: 273: 270: 267: 264: 261: 255:tuple variables 251: 166:implementations 155: 153: 150: 112: 101: 95: 92: 49: 47: 37: 25: 12: 11: 5: 1587: 1577: 1576: 1571: 1566: 1561: 1544: 1543: 1541: 1540: 1534: 1532: 1528: 1527: 1525: 1524: 1519: 1513: 1511: 1507: 1506: 1504: 1503: 1498: 1493: 1488: 1483: 1478: 1473: 1468: 1463: 1458: 1453: 1448: 1443: 1438: 1433: 1428: 1423: 1418: 1413: 1408: 1403: 1398: 1393: 1387: 1385: 1384:In current use 1381: 1380: 1373: 1372: 1365: 1358: 1350: 1344: 1343: 1334: 1331: 1328: 1327: 1313:10.1.1.109.957 1287: 1269:Stonebraker, M 1259: 1258: 1256: 1253: 1252: 1251: 1246: 1241: 1233: 1230: 1084: 951: 944: 943: 715: 712: 633:"FL" 594:"FL" 466: 462: 461: 458: 355: 260: 250: 247: 201:query language 189: 188: 182: 181: 177: 176: 169: 168: 161: 160: 147: 143: 142: 137: 131: 130: 128:Query language 125: 114: 113: 28: 26: 19: 9: 6: 4: 3: 2: 1586: 1575: 1572: 1570: 1567: 1565: 1562: 1560: 1557: 1556: 1554: 1539: 1536: 1535: 1533: 1529: 1523: 1520: 1518: 1515: 1514: 1512: 1508: 1502: 1499: 1497: 1494: 1492: 1489: 1487: 1484: 1482: 1479: 1477: 1474: 1472: 1469: 1467: 1464: 1462: 1459: 1457: 1454: 1452: 1449: 1447: 1444: 1442: 1439: 1437: 1434: 1432: 1429: 1427: 1424: 1422: 1419: 1417: 1414: 1412: 1409: 1407: 1404: 1402: 1399: 1397: 1394: 1392: 1389: 1388: 1386: 1382: 1378: 1371: 1366: 1364: 1359: 1357: 1352: 1351: 1348: 1341: 1337: 1336: 1323: 1319: 1314: 1309: 1305: 1301: 1297: 1291: 1283: 1280:. Proc. 1986 1276: 1275: 1270: 1264: 1260: 1250: 1247: 1245: 1242: 1239: 1236: 1235: 1229: 1082: 1079: 1077: 949: 713: 582:"m" 464: 463: 459: 456: 455: 452: 448: 353: 350: 258: 256: 246: 243: 239: 235: 231: 230: 225: 221: 217: 214: 210: 206: 202: 199: 195: 187: 183: 180:Influenced by 178: 174: 170: 167: 162: 148: 144: 141: 138: 136: 132: 129: 126: 122: 110: 107: 99: 96:November 2013 88: 85: 81: 78: 74: 71: 67: 64: 60: 57: –  56: 52: 51:Find sources: 45: 41: 35: 34: 29:This article 27: 23: 18: 17: 1470: 1338:C. J. Date: 1303: 1299: 1290: 1273: 1263: 1212:matches all 1207: 1080: 1065: 947: 870:'FL' 843:'FL' 449: 445: 351: 347: 254: 252: 228: 193: 192: 102: 93: 83: 76: 69: 62: 50: 38:Please help 33:verification 30: 1510:Proprietary 837:'m' 222:, based on 203:, based on 1569:PostgreSQL 1553:Categories 1531:Superseded 1306:(3): 191. 1255:References 218:effort at 175:, POSTQUEL 66:newspapers 1308:CiteSeerX 1232:See also 1086:retrieve 669:retrieve 600:retrieve 417:employee 277:retrieve 274:EMPLOYEE 234:POSTGRES 1538:CODASYL 1431:Gremlin 1426:GraphQL 1421:Datalog 1034:address 956:student 924:student 912:student 879:student 858:student 789:student 723:student 636:replace 537:student 471:student 154: ( 80:scholar 1491:XQuery 1481:SPARQL 1476:SMARTS 1406:Cypher 1310:  918:delete 903:select 876:update 849:select 819:values 783:insert 717:create 687:delete 540:append 468:create 381:salary 369:select 357:create 301:Salary 238:Oracle 213:Ingres 173:Ingres 164:Major 124:Family 82:  75:  68:  61:  53:  1496:XPath 1396:ALPHA 1278:(PDF) 1214:y.str 1176:count 1125:where 1098:count 1070:to a 1022:comma 998:comma 974:comma 927:where 864:state 861:where 813:state 768:state 720:table 693:where 627:state 618:where 588:state 525:range 513:state 426:where 360:table 328:where 262:range 249:Usage 236:. As 196:is a 186:Alpha 87:JSTOR 73:books 1522:LINQ 1471:QUEL 1446:LINQ 1441:LDAP 1436:ISBL 1226:like 1072:from 1068:into 1058:into 962:name 953:copy 930:name 921:from 909:from 855:from 795:name 786:into 771:char 756:char 732:char 729:name 702:name 552:name 477:name 460:SQL 457:QUEL 435:name 414:from 411:COMP 337:Name 289:COMP 280:into 240:and 224:Codd 216:DBMS 194:QUEL 156:1976 149:1976 119:QUEL 59:news 1517:YQL 1501:YQL 1486:SQL 1466:OCL 1461:OQL 1456:MDX 1451:MQL 1416:DMX 1411:DAX 1401:CQL 1391:.QL 1318:doi 1203:))) 1170:max 1152:str 1134:str 1010:sex 986:age 891:age 885:age 882:set 807:sex 801:age 780:)); 753:sex 747:int 744:age 681:all 657:age 645:age 612:all 576:sex 564:age 501:sex 489:age 483:c10 396:age 316:Age 242:DB2 209:SQL 42:by 1555:: 1316:. 1302:. 1218:ii 1191:by 1161:), 1143:or 1113:by 1078:. 1052:d1 1046:nl 1040:c0 1028:d1 1016:c0 1004:d1 992:c0 980:d1 968:c0 846:); 831:17 765:), 741:), 738:10 570:17 543:to 534:is 528:of 519:c2 507:c1 495:i4 420:as 408:as 405:)) 402:18 366:as 325:)) 322:18 271:is 265:of 1369:e 1362:t 1355:v 1324:. 1320:: 1304:1 1222:= 1200:d 1197:. 1194:y 1188:i 1185:. 1182:y 1179:( 1173:( 1167:= 1164:b 1155:= 1149:. 1146:y 1137:= 1131:. 1128:y 1122:d 1119:. 1116:y 1110:i 1107:. 1104:y 1101:( 1095:= 1092:a 1089:( 1055:) 1049:= 1043:, 1037:= 1031:, 1025:= 1019:, 1013:= 1007:, 1001:= 995:, 989:= 983:, 977:= 971:, 965:= 959:( 939:; 933:= 915:; 906:* 900:; 897:1 894:+ 888:= 873:; 867:= 852:* 840:, 834:, 828:, 822:( 816:) 810:, 804:, 798:, 792:( 777:2 774:( 762:1 759:( 750:, 735:( 726:( 705:= 699:. 696:s 690:s 684:) 678:. 675:s 672:( 666:) 663:1 660:+ 654:. 651:s 648:= 642:( 639:s 630:= 624:. 621:s 615:) 609:. 606:s 603:( 597:) 591:= 585:, 579:= 573:, 567:= 561:, 555:= 549:( 546:s 531:s 522:) 516:= 510:, 504:= 498:, 492:= 486:, 480:= 474:( 438:= 432:. 429:E 423:E 399:- 393:. 390:E 387:( 384:/ 378:. 375:E 372:( 363:W 340:= 334:. 331:E 319:- 313:. 310:E 307:( 304:/ 298:. 295:E 292:= 286:( 283:W 268:E 158:) 109:) 103:( 98:) 94:( 84:· 77:· 70:· 63:· 36:.

Index


verification
improve this article
adding citations to reliable sources
"QUEL query languages"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
Query language
Designed by
Michael Stonebraker
implementations
Ingres
Alpha
relational database
query language
tuple relational calculus
SQL
Ingres
DBMS
University of California, Berkeley
Codd
Data Sub-Language ALPHA
POSTGRES
Oracle
DB2
stored procedures

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