search
HomeDatabaseMysql TutorialA complete collection of MYSQL classic statements - improvement

1. Description: Copy the table (only copy the structure, source table name: a New table name: b) (Access available)
Method 1: SELECT * into b from a where 11 (only for SQlServer)
Method 2: SELECT top 0 * into b from a
2. Description: Copy table (copy data, source table name: a target table name: b) (Access available)
insert into b (a, b, c) select d ,e,f from b;
 3. Description: Copy tables between databases (use absolute paths for specific data) (Access available)
 insert into b(a, b, c) select d,e,f from b in 'Specific database' where condition
Example: ..from b in '"&Server.MapPath(".")&"data.mdb" &"' where..
4. Description: Subquery (table name 1: a table Name 2: b)
 select a,b,c from a where a IN (select d from b) or: select a,b,c from a where a IN (1,2,3)
5. Description: Display article , submitter and last reply time
 select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
 6. Description: outer connection Query (Table name 1: a Table name 2: b) Select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c 7. Description: Online view query (Table name 1: a )
 select * from (SELECT a,b,c FROM a) T where t.a > 1;
 8. Description: usage of between, between limits the query data range and includes boundary values, not between does not include
 select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between value1 and value2
9. Description: How to use inselect * from table1 where a [not] in ('value1 ','value 2','value 4','value 6')
 10. Description: Two related tables, delete the information in the main table that is not in the secondary table
 delete from table1 where not exists (select * from table2 where table1.field1=table2.field1)
 11. Description: Four table joint query problem:
 select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....
 12. Description: Schedule reminder five minutes in advance
 SQL: select * from Schedule where datediff('minute',f start time,getdate())>5
 13. Description: A sql statement Complete database paging
 select top 10 b.* from (select top 20 primary key field, sorting field from table name order by sorting field desc) a, table name b where b.primary key field = a.primary key field order by a.sorting field
 Specific implementation:
About database paging:
 declare @start int,@end int
 @sql nvarchar(600)
 set @sql='select top'+str(@end-@start+1)+'+from T where rid not in(select top'+str(@str-1)+'Rid from T where Rid>-1)'
 exec sp_executesql @sql
Note: top cannot be followed directly by a variable, so in practical applications Only such special processing is carried out. Rid is an identification column. If there are specific fields after top, this is very beneficial. Because this can avoid the inconsistency in the actual table after the query result if the top field is a logical index (the data in the logical index may be inconsistent with the data table, and if it is in the index during the query, the index will be queried first)
14. Description: Select top 10 * form table1 where range
15. Description: Select all the information of the record with the largest a corresponding to each group of data with the same b value (similar usage can be used for Forum monthly rankings, monthly hot-selling product analysis, ranking by subject scores, etc.)
 select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta .b)
 16. Description: Include all rows in TableA but not in TableB and TableC and eliminate all duplicate rows to derive a result table
(select a from tableA) except (select a from tableB) except (select a from tableC)
 17. Description: Randomly take out 10 pieces of data
 select top 10 * from tablename order by newid()
 18. Description: Randomly select records
  select newid()
 19. Description: Delete duplicate records
 1),delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)
 2),select distinct * into temp from tablename
 delete from tablename
insert into tablename select * from temp
 Comment: This operation involves the movement of a large amount of data. This approach is not suitable for large-capacity data operations
 3), for example: importing into an external table For some reasons, only a part of the data was imported for the first time, but it is difficult to determine the specific location. In this way, all the data can only be imported next time, which will produce a lot of duplicate fields. How to delete duplicate fields
  alter table tablename
 --Add one Auto-increment column
 add column_bint identity(1,1)
 delete from tablenamewhere column_b not in(
 select max(column_b) from tablename group by column1,column2,...)
 alter table tablename drop column column_b
 2 0. Description: List all table names in the database
Select name from sysobjects where type='U' // U represents user
21. Description: List all column names in the table
Select name from syscolumns where id=object_id('TableName ')
  22. Description: List the type, vendor, and pcs fields, arranged by the type field. Case can easily implement multiple selections, similar to the case in select.
 select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type
 Display results:
 type vender pcs
 Computer A 1
 Computer A 1
 CD B 2
 CD A 2
 Mobile phone B 3
 Mobile phone C 3
 23. Description: Initialize table table1
 TRUNCATE TABLE table1

24 , Description: Select records from 10 to 15
 select top 5 * from (select top 15 * from table order by id asc) table_alias order by id desc

The above is the content of the MYSQL classic statement - improvement chapter, For more related content, please pay attention to the PHP Chinese website (www.php.cn)!


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
MySQL String Types: Storage, Performance, and Best PracticesMySQL String Types: Storage, Performance, and Best PracticesMay 10, 2025 am 12:02 AM

MySQLstringtypesimpactstorageandperformanceasfollows:1)CHARisfixed-length,alwaysusingthesamestoragespace,whichcanbefasterbutlessspace-efficient.2)VARCHARisvariable-length,morespace-efficientbutpotentiallyslower.3)TEXTisforlargetext,storedoutsiderows,

Understanding MySQL String Types: VARCHAR, TEXT, CHAR, and MoreUnderstanding MySQL String Types: VARCHAR, TEXT, CHAR, and MoreMay 10, 2025 am 12:02 AM

MySQLstringtypesincludeVARCHAR,TEXT,CHAR,ENUM,andSET.1)VARCHARisversatileforvariable-lengthstringsuptoaspecifiedlimit.2)TEXTisidealforlargetextstoragewithoutadefinedlength.3)CHARisfixed-length,suitableforconsistentdatalikecodes.4)ENUMenforcesdatainte

What are the String Data Types in MySQL?What are the String Data Types in MySQL?May 10, 2025 am 12:01 AM

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,2)VARCHARforvariable-lengthtext,3)BINARYandVARBINARYforbinarydata,4)BLOBandTEXTforlargedata,and5)ENUMandSETforcontrolledinput.Eachtypehasspecificusesandperformancecharacteristics,sochoose

How to Grant Permissions to New MySQL UsersHow to Grant Permissions to New MySQL UsersMay 09, 2025 am 12:16 AM

TograntpermissionstonewMySQLusers,followthesesteps:1)AccessMySQLasauserwithsufficientprivileges,2)CreateanewuserwiththeCREATEUSERcommand,3)UsetheGRANTcommandtospecifypermissionslikeSELECT,INSERT,UPDATE,orALLPRIVILEGESonspecificdatabasesortables,and4)

How to Add Users in MySQL: A Step-by-Step GuideHow to Add Users in MySQL: A Step-by-Step GuideMay 09, 2025 am 12:14 AM

ToaddusersinMySQLeffectivelyandsecurely,followthesesteps:1)UsetheCREATEUSERstatementtoaddanewuser,specifyingthehostandastrongpassword.2)GrantnecessaryprivilegesusingtheGRANTstatement,adheringtotheprincipleofleastprivilege.3)Implementsecuritymeasuresl

MySQL: Adding a new user with complex permissionsMySQL: Adding a new user with complex permissionsMay 09, 2025 am 12:09 AM

ToaddanewuserwithcomplexpermissionsinMySQL,followthesesteps:1)CreatetheuserwithCREATEUSER'newuser'@'localhost'IDENTIFIEDBY'password';.2)Grantreadaccesstoalltablesin'mydatabase'withGRANTSELECTONmydatabase.TO'newuser'@'localhost';.3)Grantwriteaccessto'

MySQL: String Data Types and CollationsMySQL: String Data Types and CollationsMay 09, 2025 am 12:08 AM

The string data types in MySQL include CHAR, VARCHAR, BINARY, VARBINARY, BLOB, and TEXT. The collations determine the comparison and sorting of strings. 1.CHAR is suitable for fixed-length strings, VARCHAR is suitable for variable-length strings. 2.BINARY and VARBINARY are used for binary data, and BLOB and TEXT are used for large object data. 3. Sorting rules such as utf8mb4_unicode_ci ignores upper and lower case and is suitable for user names; utf8mb4_bin is case sensitive and is suitable for fields that require precise comparison.

MySQL: What length should I use for VARCHARs?MySQL: What length should I use for VARCHARs?May 09, 2025 am 12:06 AM

The best MySQLVARCHAR column length selection should be based on data analysis, consider future growth, evaluate performance impacts, and character set requirements. 1) Analyze the data to determine typical lengths; 2) Reserve future expansion space; 3) Pay attention to the impact of large lengths on performance; 4) Consider the impact of character sets on storage. Through these steps, the efficiency and scalability of the database can be optimized.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use