The Fifth Edition of Sams Teach Yourself SQL in 21 Days More than 48,000 sold! In just one hour a day, you'll have all the skills you need to begin creating effective SQL queries, reports, and database applications. With this complete tutorial, you'll quickly master the basics and then move on to more advanced features and concepts: * Quickly apply essential SQL techniques in useful, real-world queries * Design trustworthy, high-performance databases * Manipulate your data with views and transactions * Leverage powerful features including stored procedures, triggers, and cursors * Work with new objects introduced with the latest SQL standards * Get practical, expert tips on implementing SQL in your business environment Learn on your own time, at your own pace * No previous SQL or database experience required * Learn techniques that work with any current version of SQL * Discover how to write faster, more efficient queries * Secure your data using best practices from experienced database administrators * Build more powerful databases with features exclusive to Oracle SQL*Plus, Oracle PL/SQL, and Microsoft Transact-SQL * Write queries for the free, open source MySQL database * Embed your SQL code in other applications Ryan Stephens and Ron Plew are President and VP of Perpetual Technologies, Inc. (PTI) in Indianapolis, IN, providing managed services and consulting for top database implementations running Oracle, SQL Server, and other leading technologies. They taught for 5+ years as adjunct professors at Indiana University-Purdue University. Their books include Sams Teach Yourself SQL in 24 Hours, First through Fourth Editions, Sams Teach Yourself SQL in 21 Days, Second through Fourth Editions, and Database Design. Table of Contents Introduction 1 PART I: Introducing SQL LESSON 1: Getting Started with SQL 5 A Brief History of SQL 5 A Brief History of Databases 6 Today's Database Landscape 11 A Cross-Product Language 12 Early Implementations 12 SQL and Client/Server Application Development 13 An Overview of SQL 13 Popular SQL Implementations 14 MySQL 14 Oracle 14 Microsoft SQL Server and Sybase 15 IBM DB2 16 Open Database Connectivity 16 Embedding SQL in Application Programming 17 LESSON 2: Introducing the Query 21 Exploring SQL's Background 21 Learning Basic Query Syntax 22 The Building Blocks of Data Retrieval: SELECT and FROM 23 Applying Query Concepts 25 Writing Your First Query 26 Terminating a SQL Statement 28 Selecting Individual Columns 28 Changing the Order of the Columns 29 Selecting Different Tables 31 Selecting Distinct Values 31 Exercises 37 LESSON 3: Expressions, Conditions, and Operators 39 Working with Query Expressions 40 Placing Conditions on Queries 40 Learning How to Use Operators 42 Arithmetic Operators 42 Comparison Operators 55 Character Operators 63 Logical Operators 70 Set Operators 75 Miscellaneous Operators: IN and BETWEEN 78 LESSON 4: Clauses in SQL Queries 85 Specifying Criteria with the WHERE Clause 87 Order from Chaos: The ORDER BY Clause 89 The GROUP BY Clause 98 The HAVING Clause 105 Combining Clauses 112 Example 4.1 112 Example 4.2 113 Example 4.3 113 Example 4.4 115 LESSON 5: Joining Tables 121 Joining Multiple Tables in a Single SELECT Statement 121 Cross Joining Tables 123 Finding the Correct Column 128 Joining Tables Based on Equality 129 Joining Tables Based on Nonequality 137 OUTER JOINs Versus INNER JOINs 139 Joining a Table to Itself: The Self Join 143 LESSON 6: Embedding Subqueries into Queries 151 Building a Subquery 153 Using Aggregate Functions with Subqueries 160 Nesting Subqueries 162 Referencing Outside with Correlated Subqueries 166 Using EXISTS, ANY, and ALL 169 LESSON 7: Molding Data with Built-in Functions 179 Using Aggregate Functions to Summarize Data 180 COUNT 180 SUM 181 AVG 182 MAX 184 MIN 185 VARIANCE 186 STDDEV 186 Using Functions to Format Date and Time Values 187 ADD_MONTHS/ADD_DATE 188 LAST_DAY 190 MONTHS_BETWEEN 191 NEXT_DAY 193 SYSDATE 193 Using Functions for Arithmetic Operations 195 ABS 195 CEIL and FLOOR 196 EXP 196 LN and LOG 197 MOD 198 POWER 199 SIGN 199 SQRT 200 Using Functions to Modify the Appearance of Character Values 201 CHR 201 CONCAT 202 INITCAP 203 LOWER and UPPER 203 LPAD and RPAD 205 LTRIM and RTRIM 206 REPLACE 207 SUBSTR 209 TRANSLATE 213 INSTR 214 LENGTH 214 Conversion Functions 215 TO_CHAR 215 TO_NUMBER 217 Miscellaneous Functions 217 GREATEST and LEAST 217 USER 218 Supplemental Examples of MySQL Character Functions 219 LENGTH 219 LOCATE 219 INSTR 220 LPAD 220 RPAD 220 LEFT 220 RIGHT 221 SUBSTRING 221 LTRIM 221 RTRIM 222 TRIM 222 Supplemental Examples of MySQL Date Functions 222 DATE_FORMAT 223 TIME_FORMAT 224 CURDATE 224 CURTIME 225 PART II: Database Design LESSON 8: Database Normalization 229 Normalizing a Database 229 The Raw Database 229 Logical Database Design 230 The Needs of the End User 230 Data Redundancy 231 Understanding the Normal Forms 231 The First Normal Form 232 The Second Normal Form 233 The Third Normal Form 234 Making Normalization Work 235 Referential Integrity 235 Benefits of Normalization 236 Drawbacks of Normalization 237 Denormalizing a Database 237 LESSON 9: Creating and Maintaining Tables 241 Beginning with the CREATE DATABASE Statement 242 CREATE DATABASE Options 243 Database Design 244 Creating a Data Dictionary (System Catalog) 244 Creating Key Fields 246 Defining Tables with the CREATE TABLE Statement 247 The Table Name 248 The Field Name 249 The Field's Data Type 249 Table Storage and Sizing 254 Creating a Table from an Existing Table 255 Modifying Table Structures with the ALTER TABLE Statement 257 The DROP TABLE Statement 261 The DROP DATABASE Statement 262 Working with DROP TABLE and DROP DATABASE 262 LESSON 10: Controlling Data Integrity 267 Introducing Constraints 267 Data Integrity 267 Why Use Constraints? 268 Exploring Types of Constraints 269 NOT NULL Constraints 269 Primary Key Constraints 271 Unique Constraints 273 Foreign Key Constraints 274 Check Constraints 276 Managing Constraints 277 Using the Right Order 278 Different Approaches to Creating Constraints 279 Example Oracle Referential Integrity Reports 279 PART III: Data Manipulation LESSON 11: Manipulating Data 285 Introducing Data-Manipulation Statements 285 Entering Data with the INSERT Statement 286 Entering One Record with the INSERT...VALUES Statement 286 Inserting NULL Values 289 Inserting Unique Values 291 Entering Multiple Records with the INSERT...SELECT Statement 292 Modifying Existing Data with the UPDATE Statement 295 Removing Information with the DELETE Statement 298 Importing and Exporting Data from Foreign Sources 303 Microsoft Access 303 Microsoft SQL Server 304 Oracle 305 MySQL 305 LESSON 12: Dates and Time in SQL 309 How Are Date and Time Values Stored? 310 ANSI Standard Data Types for Date and Time 310 DATETIME Elements 311 Implementation of Specific Data Types 311 Applying Date Functions to the Query 312 The Current Date 312 Time Zones 314 Adding Time to Dates 315 Subtracting Dates 318 Comparing Dates and Time Periods 320 Other Miscellaneous Date Functions 320 Converting Date Formats 321 Date Pictures 322 Converting Dates to Character Strings 324 Converting Character Strings to Dates 325 LESSON 13: Creating Views 331 Introducing Views 331 Using Views 332 Exploring a Simple View 335 Renaming Columns 337 Examining SQL View Processing 338 Restrictions on Using SELECT 343 Modifying Data in a View 343 Problems with Modifying Data Using Views 345 Common Applications of Views 346 Removing Views with the DROP VIEW Statement 350 LESSON 14: Controlling Transactions 353 Transaction Management 354 The Banking Application 354 Beginning a Transaction 356 Finishing a Transaction 358 Canceling the Transaction 361 Using Transaction Savepoints 363 PART IV: Database Administration LESSON 15: Creating Indexes on Tables to Improve Performance 369 What Are Indexes? 370 Indexing Tips 378 Indexing on More Than One Field 379 Using the UNIQUE Keyword with CREATE INDEX 381 Indexes and Joins 382 Using Clustered Indexes 384 LESSON 16: Streamlining SQL Statements for Improved Performance 389 Making Your SQL Statements Readable 390 Avoiding the Full-Table Scan 391 Adding a New Index 393 Arranging Elements in a Query 393 Procedures 395 Avoiding OR 396 OLAP Versus OLTP 397 Tuning an OLTP System 397 Tuning an OLAP System 398 Batch Loads Versus Transactional Processing 398 Optimizing Data Loads by Dropping Indexes 400 COMMIT Statement 401 Rebuilding Tables and Indexes in a Dynamic Environment 402 Tuning the Database 405 Identifying Performance Obstacles 407 Using Built-in Tuning Tools 409 LESSON 17: Database Security 413 Security's Role in Database Administration 413 Popular Database Products and Security 414 Oracle Express and MySQL Security 416 Creating Users 416 Creating Roles 419 User Privileges 421 Using Views for Security Purposes 429 Using Synonyms in Place of Views 430 Using Views to Solve Security Problems 431 Using the WITH GRANT OPTION Clause 433 LESSON 18: Exploring the Data Dictionary (System Catalog) 437 An Introduction to the Data Dictionary 437 Identifying Data Dictionary Users 438 Exploring the Contents of the Data Dictionary 439 Oracle's Data Dictionary 439 MySQL Data Dictionary 440 A Look Inside Oracle's Data Dictionary 440 User Views 440 System DBA Views 449 Dynamic Performance Views 458 A Look Inside MySQL's Data Dictionary 459 Showing Table Commands Within MySQL 460 Using INFORMATION_SCHEMA 461 PART V: More SQL Objects LESSON 19: Temporary Tables, Stored Procedures, Triggers, and Cursors 467 Creating Temporary Tables 468 Using Cursors 472 Creating a Cursor 473 Opening a Cursor 473 Scrolling a Cursor 473 Testing a Cursor's Status 474 Closing a Cursor 475 The Scope of Cursors 475 Creating and Using Stored Procedures 476 Removing a Stored Procedure 478 Designing and Using Triggers 479 Triggers and Transactions 480 Restrictions on Using Triggers 481 Nested Triggers 481 Using Embedded SQL 481 Static and ...
评分
评分
评分
评分
一直以来,我对SQL的了解都停留在“听过”、“大概知道”的层面,从来没有系统地学习过。这次因为工作需要,不得不抽出时间来恶补一下。在众多的SQL教程中,《Sams Teach Yourself SQL in One Hour a Day》以其“一小时”的承诺吸引了我,虽然我深知不可能真的在一小时内精通,但我希望能找到一个能让我快速入门并建立起基本概念的书。这本书确实没有让我失望。它的结构设计非常合理,每一课都是一个独立的小单元,但又与前后的内容紧密相连,形成一个完整的学习路径。讲解风格非常务实,直接切入SQL的核心功能,并且用大量生动形象的例子来阐释。我特别欣赏书中对SQL语句各个部分的详细拆解,让我能够清楚地理解每个关键字的作用。通过这本书的学习,我不仅掌握了基本的SELECT、INSERT、UPDATE、DELETE语句,还对WHERE、GROUP BY、ORDER BY等子句有了更深入的理解。现在,我能够自信地向数据库发出指令,并从中获取我需要的信息,这极大地提升了我的工作效率和解决问题的能力。
评分作为一名有一定编程基础的开发者,我一直想把SQL技能再提升一个档次,尤其是在处理大数据和优化查询方面。市面上关于SQL的书籍很多,但我被《Sams Teach Yourself SQL in One Hour a Day》这个标题吸引了,感觉它能够让我快速掌握核心要点,而不是花费大量时间在一些基础的、我可能已经掌握的概念上。果然,这本书非常适合我这样的读者。它没有从最最基础的“什么是数据库”讲起,而是直接切入SQL的实用性,很快就进入了数据查询、数据操纵和函数的使用。书中的讲解逻辑清晰,条理分明,并且强调了SQL的最佳实践。我尤其喜欢它在解释一些高级概念时,比如窗口函数或CTE(公共表表达式),能够结合具体的业务场景来分析,让我一下子就能理解这些技术点的价值和应用。虽然我不需要“从零开始”学习,但它提供的系统化梳理和一些我之前忽略的技巧,还是让我受益匪浅。通过这本书,我能够更自信地去设计更复杂的查询,并能更好地理解和优化现有数据库方案。
评分我最近的工作需要频繁接触数据库,但我一直以来都只懂点皮毛,大部分时间都是依赖同事帮忙。这次下定决心要自己学点东西,就找了这本《Sams Teach Yourself SQL in One Hour a Day》。老实说,我对“一小时”这个承诺持保留态度,毕竟学习SQL涉及逻辑和语法,并非一日之功。然而,这本书真的给了我惊喜。它将整个学习过程设计得非常紧凑且高效。我通常会在工作之余,利用午休或者晚上的时间来学习。每一课都围绕着一个核心主题展开,讲解深入浅出,并且配有大量的代码示例。这些示例不仅是枯燥的语法罗列,而是能让我看到SQL语句如何在实际场景中发挥作用。书中的练习题也很到位,能够帮助我巩固当天所学的内容。最让我印象深刻的是,它并没有回避一些稍微复杂的概念,比如JOIN的各种类型,但它会用非常形象的比喻来解释,让我瞬间就能理解。虽然我还没完全达到“精通”的程度,但现在我能够独立完成一些基础的数据提取和简单的数据操作了,这对我来说已经是一个巨大的进步,大大提升了我的工作效率,也让我对自己的能力更有信心了。
评分我是一名对数据分析充满好奇的职场新人,但缺乏专业背景,对SQL这种“技术语言”感到很陌生。朋友推荐了这本《Sams Teach Yourself SQL in One Hour a Day》,说是入门的好选择。我当时心里也忐忑,担心自己跟不上。结果发现这本书真的太友好啦!它把学习过程拆解得非常细致,每天的内容量刚刚好,不会让人觉得压力太大。我每天下班后,都会花一个小时左右跟着书本学习,感觉就像是在和一个耐心的老师对话。书里的语言非常口语化,没有太多晦涩难懂的专业术语。即使有些概念第一次接触,也能在书中找到清晰的解释和通俗的比喻。最重要的是,它鼓励动手实践,我跟着书里的例子在数据库里敲命令,看着数据一点点被提取出来,那种成就感是无法言喻的。我感觉自己不再只是一个旁观者,而是真正地掌握了与数据互动的能力。现在,我能自己完成一些简单的数据报表生成,这让我更有底气去胜任我的工作。
评分这本SQL教程简直是救星!我之前对数据库和SQL一窍不通,看到一堆SQL语句就头疼。朋友推荐了这本《Sams Teach Yourself SQL in One Hour a Day》,抱着试试看的心态买了。刚开始的时候,我以为“一小时”是个噱头,毕竟学习一门新技术怎么可能这么快?但事实证明,这书的设计真的是太人性化了!它把内容分解成了一个个小章节,每个章节都设计了明确的学习目标,并且用非常清晰易懂的语言来解释概念。即使是像我这样零基础的读者,也能很快跟上节奏。书中的例子非常贴合实际,我还能跟着书中的步骤一步步在自己的电脑上练习,感觉自己真的在动手操作,而不是枯燥地看理论。那些复杂的数据查询语句,在这本书的引导下,也变得不再那么可怕,我甚至开始享受解决数据难题的过程了。我最喜欢的是它循序渐进的难度设置,不会一开始就抛出大量复杂的知识点,而是像搭积木一样,一点点构建起我的SQL知识体系。现在,我敢说我真的能看懂并写出一些基本的SQL查询了,这在几个星期前是我想都不敢想的。
评分 评分 评分 评分 评分本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2026 book.quotespace.org All Rights Reserved. 小美书屋 版权所有