{"product_id":"job-ready-sql-isbn-9781394181032","title":"Job Ready SQL","description":"\u003cp\u003e\u003cb\u003eLearn the most important SQL skills and apply them in your job—quickly and efficiently!\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003eSQL (Structured Query Language) is the modern language that almost every relational database system supports for adding data, retrieving data, and modifying data in a database. Although basic visual tools are available to help end-users input common commands, data scientists, business intelligence analysts, Cloud engineers, Machine Learning programmers, and other professionals routinely need to query a database using SQL. \u003c\/p\u003e\u003cp\u003e\u003ci\u003eJob Ready SQL \u003c\/i\u003eprovides you with the foundational skills necessary to work with data of any kind. Offering a straightforward ‘learn-by-doing’ approach, this concise and highly practical guide teaches you all the basics of SQL so you can apply your knowledge in real-world environments immediately. Throughout the book, each lesson includes clear explanations of key concepts and hands-on exercises that mirror real-world SQL tasks. \u003c\/p\u003e\u003cul\u003e \u003cli\u003eTeaches the basics of SQL database creation and management using easy-to-understand language\u003c\/li\u003e \u003cli\u003eHelps readers develop an understanding of fundamental concepts and more advanced applications such as data engineering and data science\u003c\/li\u003e \u003cli\u003eDiscusses the key types of SQL commands, including Data Definition Language (DDL) commands and Data Manipulation Language (DML) commands\u003c\/li\u003e \u003cli\u003eIncludes useful reference information on querying SQL-based databases\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003e\u003ci\u003eJob Ready SQL\u003c\/i\u003e is a must-have resource for students and working professionals looking to quickly get up to speed with SQL and take their relational database skills to the next level. \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eAcknowledgments v\u003c\/p\u003e \u003cp\u003eAbout the Authors vi\u003c\/p\u003e \u003cp\u003eAbout the Technical Writer vii\u003c\/p\u003e \u003cp\u003eAbout the Technical Editor viii\u003c\/p\u003e \u003cp\u003eIntroduction xix\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart I: Introduction to Database Concepts 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 1: Exploring Relational Databases and SQL 3\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSaving Data 4\u003c\/p\u003e \u003cp\u003eWhat Is a Database? 5\u003c\/p\u003e \u003cp\u003eDatabase Uses 5\u003c\/p\u003e \u003cp\u003eData vs. Information 6\u003c\/p\u003e \u003cp\u003eStructured vs. Unstructured 6\u003c\/p\u003e \u003cp\u003eDatabase vs. DBMS 7\u003c\/p\u003e \u003cp\u003eRelational Database Concepts 7\u003c\/p\u003e \u003cp\u003eACID Compliance 9\u003c\/p\u003e \u003cp\u003eACID Properties 10\u003c\/p\u003e \u003cp\u003eAtomicity 10\u003c\/p\u003e \u003cp\u003eConsistency 10\u003c\/p\u003e \u003cp\u003eIsolation 12\u003c\/p\u003e \u003cp\u003eDurability 12\u003c\/p\u003e \u003cp\u003eDatabases and Log Files 12\u003c\/p\u003e \u003cp\u003eEntity Integrity 13\u003c\/p\u003e \u003cp\u003eEnsuring Uniqueness 13\u003c\/p\u003e \u003cp\u003eFinding Records 14\u003c\/p\u003e \u003cp\u003eBackup Strategies 15\u003c\/p\u003e \u003cp\u003eSummary 16\u003c\/p\u003e \u003cp\u003eExercises 17\u003c\/p\u003e \u003cp\u003eExercise 1.1: Customers and Orders 17\u003c\/p\u003e \u003cp\u003eExercise 1.2: Libraries and the Books Within 17\u003c\/p\u003e \u003cp\u003eExercise 1.3: Your Scenario 18\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 2: Applying Normalization 19\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eWhat Is Normalization? 19\u003c\/p\u003e \u003cp\u003eData Redundancy Is a Problem 20\u003c\/p\u003e \u003cp\u003eStorage Reduction 21\u003c\/p\u003e \u003cp\u003eFunctional Dependencies 22\u003c\/p\u003e \u003cp\u003eNormalizing Data 22\u003c\/p\u003e \u003cp\u003eFirst Normal Form 23\u003c\/p\u003e \u003cp\u003eTop- to- Bottom or Left- to- Right Ordering 23\u003c\/p\u003e \u003cp\u003eEvery Row Can Be Uniquely Identified 24\u003c\/p\u003e \u003cp\u003eEvery Field Contains Only One Value 24\u003c\/p\u003e \u003cp\u003eSummary of First Normal Form 25\u003c\/p\u003e \u003cp\u003eSecond Normal Form 26\u003c\/p\u003e \u003cp\u003eNormalize to 1NF 27\u003c\/p\u003e \u003cp\u003eComposite Keys 28\u003c\/p\u003e \u003cp\u003eSummary of Second Normal Form 31\u003c\/p\u003e \u003cp\u003eThird Normal Form 33\u003c\/p\u003e \u003cp\u003eDenormalization 35\u003c\/p\u003e \u003cp\u003eSummary 37\u003c\/p\u003e \u003cp\u003eExercises 37\u003c\/p\u003e \u003cp\u003eExercise 2.1: Employees 38\u003c\/p\u003e \u003cp\u003eExercise 2.2: Libraries and the Books Within 38\u003c\/p\u003e \u003cp\u003eExercise 2.3: Hotels 39\u003c\/p\u003e \u003cp\u003eExercise 2.4: Students and Courses 39\u003c\/p\u003e \u003cp\u003eExercise 2.5: On the Menu 40\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 3: Creating Entity- Relationship Diagrams 41\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUsing ERDs 42\u003c\/p\u003e \u003cp\u003eAvailable Tools 43\u003c\/p\u003e \u003cp\u003eERD Components 45\u003c\/p\u003e \u003cp\u003eCreating Tables 45\u003c\/p\u003e \u003cp\u003eAdding Fields 46\u003c\/p\u003e \u003cp\u003eIdentifying Keys 47\u003c\/p\u003e \u003cp\u003eIncluding Additional Tables 47\u003c\/p\u003e \u003cp\u003eShowing Relationships 48\u003c\/p\u003e \u003cp\u003eERD of Database 50\u003c\/p\u003e \u003cp\u003eWhat About Many- to- Many Relationships? 51\u003c\/p\u003e \u003cp\u003eSummary 52\u003c\/p\u003e \u003cp\u003eExercises 53\u003c\/p\u003e \u003cp\u003eExercise 3.1: Customers and Orders 53\u003c\/p\u003e \u003cp\u003eExercise 3.2: The Relationship Between Libraries and Books 53\u003c\/p\u003e \u003cp\u003eExercise 3.3: Many to Many No More 53\u003c\/p\u003e \u003cp\u003eExercise 3.4: Diagramming the Menu 54\u003c\/p\u003e \u003cp\u003eExercise 3.5: Database Design Assessment 54\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 4: Pulling It All Together: Normalizing a Vinyl Record\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eShop Database 57\u003c\/p\u003e \u003cp\u003eThe Vinyl Record Shop Data Overview 58\u003c\/p\u003e \u003cp\u003eStep 1: Identify the Entities and Attributes 59\u003c\/p\u003e \u003cp\u003eStep 1 Results 60\u003c\/p\u003e \u003cp\u003eStep 2: First Normal Form 61\u003c\/p\u003e \u003cp\u003eDetermining Primary Keys 62\u003c\/p\u003e \u003cp\u003eResolving Multivalued Fields 63\u003c\/p\u003e \u003cp\u003eNormalizing the Song Entity 65\u003c\/p\u003e \u003cp\u003eStep 2 Results 67\u003c\/p\u003e \u003cp\u003eStep 3: Second Normal Form 69\u003c\/p\u003e \u003cp\u003eStep 3 Results 69\u003c\/p\u003e \u003cp\u003eStep 4: Third Normal Form 69\u003c\/p\u003e \u003cp\u003eStep 4 Results 70\u003c\/p\u003e \u003cp\u003eERD in 3NF 71\u003c\/p\u003e \u003cp\u003eStep 5: Finalize the Structure 73\u003c\/p\u003e \u003cp\u003eFinal Steps 73\u003c\/p\u003e \u003cp\u003eSummary 75\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart II: Applying SQL 77\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 5: Working with MySQL Server 79\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eMySQL Installation 80\u003c\/p\u003e \u003cp\u003eStep 1: Get the Download 80\u003c\/p\u003e \u003cp\u003eStep 2: Skipping the Login 80\u003c\/p\u003e \u003cp\u003eStep 3: Starting the Install 81\u003c\/p\u003e \u003cp\u003eStep 4: Tool Selection 82\u003c\/p\u003e \u003cp\u003eStep 5: Product Configuration 83\u003c\/p\u003e \u003cp\u003eStep 6: MySQL Router Configuration 87\u003c\/p\u003e \u003cp\u003eMySQL Notifier 90\u003c\/p\u003e \u003cp\u003eCommand- Line Interface 91\u003c\/p\u003e \u003cp\u003eGetting Started with MySQL Workbench 93\u003c\/p\u003e \u003cp\u003eUse MySQL Workbench 96\u003c\/p\u003e \u003cp\u003eRun a Test Command 101\u003c\/p\u003e \u003cp\u003eSummary 102\u003c\/p\u003e \u003cp\u003eExercises 103\u003c\/p\u003e \u003cp\u003eExercise 5.1: Running the Tools 104\u003c\/p\u003e \u003cp\u003eExercise 5.2: Listing the Cities 104\u003c\/p\u003e \u003cp\u003eExercise 5.3: Small Cities 104\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 6: Diving into SQL 105\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eIntroduction to SQL 106\u003c\/p\u003e \u003cp\u003eSQL Syntax 106\u003c\/p\u003e \u003cp\u003eSemicolon 107\u003c\/p\u003e \u003cp\u003eLine Breaks and Indents 107\u003c\/p\u003e \u003cp\u003eLetter Case 108\u003c\/p\u003e \u003cp\u003eCommas 109\u003c\/p\u003e \u003cp\u003eSpaces 110\u003c\/p\u003e \u003cp\u003eQuotation Marks 110\u003c\/p\u003e \u003cp\u003eSpelling 111\u003c\/p\u003e \u003cp\u003eWorking with Null Values 111\u003c\/p\u003e \u003cp\u003eNull vs. Zero 111\u003c\/p\u003e \u003cp\u003eNullable Fields 112\u003c\/p\u003e \u003cp\u003eConsequences of Null Values 113\u003c\/p\u003e \u003cp\u003eWorking with Indexes 116\u003c\/p\u003e \u003cp\u003ePrimary vs. Secondary Storage 117\u003c\/p\u003e \u003cp\u003eIndexing Fields 117\u003c\/p\u003e \u003cp\u003eDefault Indexes 118\u003c\/p\u003e \u003cp\u003eUnique and Nonunique Indexes 119\u003c\/p\u003e \u003cp\u003eSummary 119\u003c\/p\u003e \u003cp\u003eExercises 120\u003c\/p\u003e \u003cp\u003eExercise 6.1: Remember Your Lines 120\u003c\/p\u003e \u003cp\u003eExercise 6.2: Contact Questions 120\u003c\/p\u003e \u003cp\u003eExercise 6.3: Missing Contact 121\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 7: Database Management Using DDL 123\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eDatabase Management 124\u003c\/p\u003e \u003cp\u003eCreate a New Database 124\u003c\/p\u003e \u003cp\u003eList Existing Databases 125\u003c\/p\u003e \u003cp\u003eUse a Database 126\u003c\/p\u003e \u003cp\u003eDelete an Existing Database 127\u003c\/p\u003e \u003cp\u003eMySQL Data Types 127\u003c\/p\u003e \u003cp\u003eData Types 128\u003c\/p\u003e \u003cp\u003eNumeric Data Types 128\u003c\/p\u003e \u003cp\u003eInteger Types 128\u003c\/p\u003e \u003cp\u003eDecimal Types 129\u003c\/p\u003e \u003cp\u003eString Types 130\u003c\/p\u003e \u003cp\u003eDate\/Time 130\u003c\/p\u003e \u003cp\u003eManaging Tables in MySQL 131\u003c\/p\u003e \u003cp\u003eCreate a Table 131\u003c\/p\u003e \u003cp\u003eList Tables 133\u003c\/p\u003e \u003cp\u003eView a Table 134\u003c\/p\u003e \u003cp\u003eChange a Table 135\u003c\/p\u003e \u003cp\u003eDropping a Field 135\u003c\/p\u003e \u003cp\u003eSetting a Key Value 135\u003c\/p\u003e \u003cp\u003eModifying a Field 136\u003c\/p\u003e \u003cp\u003eAdding a Field 137\u003c\/p\u003e \u003cp\u003eAltering Tables with Existing Data 137\u003c\/p\u003e \u003cp\u003eDelete a Table 137\u003c\/p\u003e \u003cp\u003eSummarizing the book Table Changes 138\u003c\/p\u003e \u003cp\u003eManaging Relationships in MySQL 139\u003c\/p\u003e \u003cp\u003eDefine a Foreign Key 139\u003c\/p\u003e \u003cp\u003eEntity Integrity 141\u003c\/p\u003e \u003cp\u003eReferential Integrity 141\u003c\/p\u003e \u003cp\u003eAdding Data to a Foreign Key Field 141\u003c\/p\u003e \u003cp\u003eUpdating Data in a Primary Record 142\u003c\/p\u003e \u003cp\u003eDeleting Data from a Primary Record 142\u003c\/p\u003e \u003cp\u003eWork- Arounds for Referential Integrity 142\u003c\/p\u003e \u003cp\u003eRemove the Foreign Key Constraints 142\u003c\/p\u003e \u003cp\u003eUsing ON UPDATE 142\u003c\/p\u003e \u003cp\u003eUsing ON DELETE 143\u003c\/p\u003e \u003cp\u003eSummary 143\u003c\/p\u003e \u003cp\u003eExercises 144\u003c\/p\u003e \u003cp\u003eExercise 7.1: Books Database 144\u003c\/p\u003e \u003cp\u003ePart 1: Define the Tables 146\u003c\/p\u003e \u003cp\u003ePart 2: Books Database SQL Scripts 146\u003c\/p\u003e \u003cp\u003ePart 3: Test the Script 147\u003c\/p\u003e \u003cp\u003eExercise 7.2: DDL Activity: Movies Database 147\u003c\/p\u003e \u003cp\u003ePart 1: Define the Tables 148\u003c\/p\u003e \u003cp\u003ePart 2: Create the Script 149\u003c\/p\u003e \u003cp\u003ePart 3: Test the Script 149\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 8: Pulling It All Together: Building the Vinyl Record\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eShop Database 151\u003c\/p\u003e \u003cp\u003eStep 1: Examine the Structure 152\u003c\/p\u003e \u003cp\u003eOrganize the Tables 154\u003c\/p\u003e \u003cp\u003eCreate the Script File 155\u003c\/p\u003e \u003cp\u003eStep 2: Create the Database 155\u003c\/p\u003e \u003cp\u003eStep 3: Create the Primary Tables 157\u003c\/p\u003e \u003cp\u003eColumn Order 158\u003c\/p\u003e \u003cp\u003eOn Your Own 159\u003c\/p\u003e \u003cp\u003eStep 4: Create the Related Tables 160\u003c\/p\u003e \u003cp\u003eCreate the song Table 160\u003c\/p\u003e \u003cp\u003eCreate the songAlbum Table 162\u003c\/p\u003e \u003cp\u003eCreate the bandArtist Table on Your Own 164\u003c\/p\u003e \u003cp\u003eStep 5: Finalize the Script 164\u003c\/p\u003e \u003cp\u003eSummary 167\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart III: Data Management and Manipulation 169\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 9: Applying CRUD: Basic Data Management and Manipulation 171\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eData Manipulation Language 172\u003c\/p\u003e \u003cp\u003eCreate a Database 172\u003c\/p\u003e \u003cp\u003eCreate the Database 175\u003c\/p\u003e \u003cp\u003eCheck That the Database Exists 176\u003c\/p\u003e \u003cp\u003eInsert Data 176\u003c\/p\u003e \u003cp\u003eAdding Without Columns Identified 177\u003c\/p\u003e \u003cp\u003eAdding Columns with Column Names 177\u003c\/p\u003e \u003cp\u003eThe Better Option 178\u003c\/p\u003e \u003cp\u003eInserting Multiple Rows 179\u003c\/p\u003e \u003cp\u003eIncrementing Auto- Increment Out of Order 180\u003c\/p\u003e \u003cp\u003eInserting a Foreign Key 181\u003c\/p\u003e \u003cp\u003eUpdate Data 182\u003c\/p\u003e \u003cp\u003eUpdating One Row 183\u003c\/p\u003e \u003cp\u003ePreview Before You Update 184\u003c\/p\u003e \u003cp\u003eUpdating Multiple Rows 184\u003c\/p\u003e \u003cp\u003eDisabling SQL_SAFE_UPDATES 185\u003c\/p\u003e \u003cp\u003eDelete Data 187\u003c\/p\u003e \u003cp\u003eSummary 191\u003c\/p\u003e \u003cp\u003eExercises 191\u003c\/p\u003e \u003cp\u003eExercise 9.1: Setting Up a Book List 192\u003c\/p\u003e \u003cp\u003eExercise 9.2: Updating Books 193\u003c\/p\u003e \u003cp\u003eExercise 9.3: Removing a Book 193\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 10: Working with SELECT Queries 195\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSetting Up a Database 196\u003c\/p\u003e \u003cp\u003eUsing the SELECT Keyword 199\u003c\/p\u003e \u003cp\u003eUsing Single- Table SELECT 199\u003c\/p\u003e \u003cp\u003eUsing SELECT * 201\u003c\/p\u003e \u003cp\u003eUsing the WHERE Clause 202\u003c\/p\u003e \u003cp\u003eFiltering Numbers 205\u003c\/p\u003e \u003cp\u003eFiltering Dates 207\u003c\/p\u003e \u003cp\u003ePattern Matching Text 207\u003c\/p\u003e \u003cp\u003eNULL: The “Billion- Dollar Mistake” 209\u003c\/p\u003e \u003cp\u003ePerforming Calculations 211\u003c\/p\u003e \u003cp\u003eSummary 213\u003c\/p\u003e \u003cp\u003eExercises 214\u003c\/p\u003e \u003cp\u003eExercise 10.1: Complaints 214\u003c\/p\u003e \u003cp\u003eExercise 10.2: Personal Trainer 215\u003c\/p\u003e \u003cp\u003eInstructions 216\u003c\/p\u003e \u003cp\u003eActivity 1 216\u003c\/p\u003e \u003cp\u003eActivity 2 216\u003c\/p\u003e \u003cp\u003eActivity 3 217\u003c\/p\u003e \u003cp\u003eActivity 4 217\u003c\/p\u003e \u003cp\u003eActivity 5 217\u003c\/p\u003e \u003cp\u003eActivity 6 217\u003c\/p\u003e \u003cp\u003eActivity 7 218\u003c\/p\u003e \u003cp\u003eActivity 8 218\u003c\/p\u003e \u003cp\u003eActivity 9 218\u003c\/p\u003e \u003cp\u003eActivity 10 218\u003c\/p\u003e \u003cp\u003eActivity 11 219\u003c\/p\u003e \u003cp\u003eActivity 12 219\u003c\/p\u003e \u003cp\u003eActivity 13 220\u003c\/p\u003e \u003cp\u003eActivity 14 220\u003c\/p\u003e \u003cp\u003eActivity 15 220\u003c\/p\u003e \u003cp\u003eActivity 16 220\u003c\/p\u003e \u003cp\u003eActivity 17 221\u003c\/p\u003e \u003cp\u003eActivity 18 221\u003c\/p\u003e \u003cp\u003eActivity 19 221\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 11: Adding JOIN Queries 223\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eStarting with a Schema 224\u003c\/p\u003e \u003cp\u003eGet Data from Multiple Tables 226\u003c\/p\u003e \u003cp\u003eUse the JOIN Clause 228\u003c\/p\u003e \u003cp\u003eInner Join 228\u003c\/p\u003e \u003cp\u003eOptional Syntax Elements 230\u003c\/p\u003e \u003cp\u003eOmitting Table Names 230\u003c\/p\u003e \u003cp\u003eOmitting the INNER Keyword 232\u003c\/p\u003e \u003cp\u003eMultiple JOINs 232\u003c\/p\u003e \u003cp\u003eINNER JOIN Limitations 235\u003c\/p\u003e \u003cp\u003eOUTER JOIN: LEFT, RIGHT, and FULL 236\u003c\/p\u003e \u003cp\u003eReplacing a NULL Value with Ifnull() 238\u003c\/p\u003e \u003cp\u003eProjects Without Workers 239\u003c\/p\u003e \u003cp\u003eWorkers Without a Project 241\u003c\/p\u003e \u003cp\u003eSelf- JOIN and Aliases 243\u003c\/p\u003e \u003cp\u003eCross Join 246\u003c\/p\u003e \u003cp\u003eSummary 247\u003c\/p\u003e \u003cp\u003eExercises 247\u003c\/p\u003e \u003cp\u003eExercise 11.1: User Stories 248\u003c\/p\u003e \u003cp\u003eExercise 11.2: Personal Trainer Activities 248\u003c\/p\u003e \u003cp\u003eActivity 1 (64 Rows) 248\u003c\/p\u003e \u003cp\u003eActivity 2 (9 Rows) 248\u003c\/p\u003e \u003cp\u003eActivity 3 (9 Rows) 250\u003c\/p\u003e \u003cp\u003eActivity 4 (35 Rows) 250\u003c\/p\u003e \u003cp\u003eActivity 5 (25 Rows) 250\u003c\/p\u003e \u003cp\u003eActivity 6 (78 Rows) 250\u003c\/p\u003e \u003cp\u003eActivity 7 (200 Rows) 250\u003c\/p\u003e \u003cp\u003eActivity 8 (0 or 1 Row) 250\u003c\/p\u003e \u003cp\u003eActivity 9 (12 Rows) 250\u003c\/p\u003e \u003cp\u003eActivity 10 (16 Rows) 251\u003c\/p\u003e \u003cp\u003eActivity 11 (50 Rows) 251\u003c\/p\u003e \u003cp\u003eActivity 12 (6 Rows, 4 Unique Rows) 251\u003c\/p\u003e \u003cp\u003eActivity 13 (26 Workouts, 3 Goals) 251\u003c\/p\u003e \u003cp\u003eActivity 14 (744 Rows) 251\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 12: Sorting and Limiting Query Results 253\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eUsing ORDER BY 254\u003c\/p\u003e \u003cp\u003eSort by a Single Column 254\u003c\/p\u003e \u003cp\u003eSort by Multiple Columns 256\u003c\/p\u003e \u003cp\u003eChanging the Order of the Columns 258\u003c\/p\u003e \u003cp\u003eHandling NULL 260\u003c\/p\u003e \u003cp\u003eUsing LIMIT 261\u003c\/p\u003e \u003cp\u003eUsing DISTINCT 263\u003c\/p\u003e \u003cp\u003eSummary 264\u003c\/p\u003e \u003cp\u003eExercises 265\u003c\/p\u003e \u003cp\u003eGetting Started: World Database 265\u003c\/p\u003e \u003cp\u003eGenerating an ERD for World 266\u003c\/p\u003e \u003cp\u003eGuidelines 267\u003c\/p\u003e \u003cp\u003eExercise 12.1: What’s in the World Database? 267\u003c\/p\u003e \u003cp\u003eExercise 12.2: Small Cities (42 rows) 267\u003c\/p\u003e \u003cp\u003eExercise 12.3: Cities by Region (4,079 rows) 267\u003c\/p\u003e \u003cp\u003eExercise 12.4: Speaking French (22 rows) 267\u003c\/p\u003e \u003cp\u003eExercise 12.5: No Independence (47 rows) 268\u003c\/p\u003e \u003cp\u003eExercise 12.6: Country Languages (990 rows) 268\u003c\/p\u003e \u003cp\u003eExercise 12.7: No Language (6 rows) 268\u003c\/p\u003e \u003cp\u003eExercise 12.8: City Population (232 rows) 268\u003c\/p\u003e \u003cp\u003eExercise 12.9: Average City Population (7 rows) 268\u003c\/p\u003e \u003cp\u003eExercise 12.10: GNP 269\u003c\/p\u003e \u003cp\u003eExercise 12.11: Capital Cities (4,079 rows) 269\u003c\/p\u003e \u003cp\u003eExercise 12.12: Country Capital Cities (239 rows) 269\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 13: Grouping and Aggregates 271\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAggregate Functions 272\u003c\/p\u003e \u003cp\u003eUsing GROUP BY 273\u003c\/p\u003e \u003cp\u003eGrouping and Multiple Columns 275\u003c\/p\u003e \u003cp\u003eAdding DISTINCT 277\u003c\/p\u003e \u003cp\u003eUsing HAVING 279\u003c\/p\u003e \u003cp\u003eSELECT Evaluation Order 281\u003c\/p\u003e \u003cp\u003eOther Examples 281\u003c\/p\u003e \u003cp\u003eSummary 283\u003c\/p\u003e \u003cp\u003eExercises 284\u003c\/p\u003e \u003cp\u003eThe Personal Trainer Database 284\u003c\/p\u003e \u003cp\u003eExercise 13.1: Number of Clients (1 row) 286\u003c\/p\u003e \u003cp\u003eExercise 13.2: Counting Client Birth Dates (1 row) 286\u003c\/p\u003e \u003cp\u003eExercise 13.3: Clients by City (20 rows) 286\u003c\/p\u003e \u003cp\u003eExercise 13.4: Invoice Totals (1,000 rows) 286\u003c\/p\u003e \u003cp\u003eExercise 13.5: Invoices More Than $500 (234 rows) 287\u003c\/p\u003e \u003cp\u003eExercise 13.6: Average Line Item Totals (3 rows) 287\u003c\/p\u003e \u003cp\u003eExercise 13.7: More Than $1, 000\u003c\/p\u003e \u003cp\u003ePaid (146 rows) 287\u003c\/p\u003e \u003cp\u003eExercise 13.8: Counts by Category (13 rows) 288\u003c\/p\u003e \u003cp\u003eExercise 13.9: Exercises (64 rows) 288\u003c\/p\u003e \u003cp\u003eExercise 13.10: Client Birth Dates (26 rows) 288\u003c\/p\u003e \u003cp\u003eExercise 13.11: Client Goal Count (500 rows, 50 rows with no goal) 289\u003c\/p\u003e \u003cp\u003eExercise 13.12: Exercise Unit Value (82 rows) 289\u003c\/p\u003e \u003cp\u003eExercise 13.13: Categorized Exercise Unit Value (82 rows) 289\u003c\/p\u003e \u003cp\u003eExercise 13.14: Level Ages (4 rows) 290\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 14: Pulling It All Together: Adding Data to the Vinyl Record Shop Database 291\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eOrganize the Tables 292\u003c\/p\u003e \u003cp\u003eCreate a Script File 293\u003c\/p\u003e \u003cp\u003eInserting Data 294\u003c\/p\u003e \u003cp\u003eWhat Is a Flat File? 294\u003c\/p\u003e \u003cp\u003eSql Insert 295\u003c\/p\u003e \u003cp\u003eInserting by Table Order 296\u003c\/p\u003e \u003cp\u003eAdding by Field Name 297\u003c\/p\u003e \u003cp\u003eOn Your Own 298\u003c\/p\u003e \u003cp\u003eUpdate Records 299\u003c\/p\u003e \u003cp\u003eImport CSV Data 300\u003c\/p\u003e \u003cp\u003eSet Up MySQL 301\u003c\/p\u003e \u003cp\u003ePrepare the CSV File 303\u003c\/p\u003e \u003cp\u003eImport the File 308\u003c\/p\u003e \u003cp\u003eCommand- Line Import 308\u003c\/p\u003e \u003cp\u003eMySQL Workbench 310\u003c\/p\u003e \u003cp\u003eAdd Data to the Script 317\u003c\/p\u003e \u003cp\u003eTest the Script 319\u003c\/p\u003e \u003cp\u003eWrap Up the Vinyl Music Shop Script 319\u003c\/p\u003e \u003cp\u003eSummary 319\u003c\/p\u003e \u003cp\u003e\u003cb\u003eLesson 15: Diving into Advanced SQL Topics 321\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAdding Subqueries 322\u003c\/p\u003e \u003cp\u003eSubqueries in the IN Operator 322\u003c\/p\u003e \u003cp\u003eSubqueries for Tables 323\u003c\/p\u003e \u003cp\u003eSubqueries for Values 325\u003c\/p\u003e \u003cp\u003eWorking with Views 326\u003c\/p\u003e \u003cp\u003eUnderstanding Transactions 327\u003c\/p\u003e \u003cp\u003eTransaction Example 328\u003c\/p\u003e \u003cp\u003eAcid 329\u003c\/p\u003e \u003cp\u003eSchema Optimization 331\u003c\/p\u003e \u003cp\u003eChoosing Optimal Data Types 331\u003c\/p\u003e \u003cp\u003eIndexing 333\u003c\/p\u003e \u003cp\u003eB- Tree Indexes 334\u003c\/p\u003e \u003cp\u003eHash Indexes 335\u003c\/p\u003e \u003cp\u003eSummary 336\u003c\/p\u003e \u003cp\u003eExercises 337\u003c\/p\u003e \u003cp\u003eExercise 15.1: Recent Tasks 337\u003c\/p\u003e \u003cp\u003eExercise 15.2: Before Grumps 338\u003c\/p\u003e \u003cp\u003eExercise 15.3: Project Due Dates 338\u003c\/p\u003e \u003cp\u003eExercise 15.4: The Work of Ealasaid Blinco 338\u003c\/p\u003e \u003cp\u003eExercise 15.5: Other Databases 339\u003c\/p\u003e \u003cp\u003eAppendix A: Bonus Lesson on Applying SQL with Python 341\u003c\/p\u003e \u003cp\u003eAppendix B: SQL Quick Reference 367\u003c\/p\u003e \u003cp\u003eIndex 375\u003c\/p\u003e  \u003cp\u003e\u003cb\u003eKIMBERLY A. WEISS\u003c\/b\u003e is Senior Manager of Curriculum Operations for Wiley Edge. She has extensive experience developing interactive instructional content for a wide variety of learners. \u003c\/p\u003e\u003cp\u003e\u003cb\u003eHAYTHEM BALTI, PhD,\u003c\/b\u003e is Associate Dean at Wiley Edge (formerly mthree), a software development and data science education platform.   \u003c\/p\u003e\u003cp\u003e\u003cb\u003eDEVELOP THE SKILLS YOU NEED FOR YOUR FIRST REAL-WORLD SQL JOB\u003c\/b\u003e \u003c\/p\u003e\u003cp\u003eFor over 30 years, data scientists, programmers, and other tech professionals have been using SQL databases to collect, retrieve, and modify data. Thanks to its ubiquity, interacting with SQL remains an essential part of the daily lives of data scientists, business intelligence analysis, Cloud engineers, machine learning programmers, and others. \u003c\/p\u003e\u003cp\u003e\u003ci\u003eJob Ready SQL \u003c\/i\u003edelivers the foundational skills you need to work with SQL data of any type. Using a straightforward ‘learn-by-doing’ approach, this accessible and concise handbook teaches you the basics of SQL so you can quickly and efficiently apply your knowledge in real-world scenarios and environments. Every lesson includes clear explanations of key concepts and hands-on exercises that mirror SQL tasks you might encounter in the field. \u003c\/p\u003e\u003cp\u003eYou’ll discover the basics of SQL database creation and management, develop an understanding of the fundamental concepts underlying data engineering and data science, become familiar with more advanced concepts, like Data Definition Language (DDL) commands and Data Manipulation Language (DML) commands, and more. \u003c\/p\u003e\u003cp\u003eAlong with useful reference information on querying SQL-based databases, \u003ci\u003eJob Ready SQL \u003c\/i\u003eprovides easy-to-follow information about: \u003c\/p\u003e\u003cul\u003e\u003cb\u003e\u003cli\u003eExploring relational databases and SQL\u003c\/li\u003e \u003cli\u003eInstalling a MySQL server\u003c\/li\u003e \u003cli\u003eManipulating SQL data\u003c\/li\u003e \u003cli\u003eJoining SQL databases\u003c\/li\u003e \u003cli\u003eInteracting with SQL via Python, Java, and other languages\u003c\/li\u003e \u003cli\u003eCommon and useful SQL terms\u003c\/li\u003e \u003cli\u003eBuilding and normalizing a sample SQL database\u003c\/li\u003e\u003c\/b\u003e\u003c\/ul\u003e \u003cp\u003eThe companion website at \u003cb\u003ewww.wiley.com\/go\/jobreadygo\u003c\/b\u003e provides supplemental files to be used by the reader in several lessons found in the book.\u003c\/p\u003e","brand":"Wiley","offers":[{"title":"Default Title","offer_id":47989490319589,"sku":"NP9781394181032","price":45.0,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1842\/7735\/files\/9781394181032.jpg?v=1761784312","url":"https:\/\/k12savings.com\/products\/job-ready-sql-isbn-9781394181032","provider":"K12savings","version":"1.0","type":"link"}