Querying case-insensitive data in MySQL often uses subqueries and uses the upper function in a subquery to convert the condition to uppercase. Such as:
Copy Code code as follows:
SELECT * FROM Staticcatalogue WHERE UPPER (source) in (select UPPER (source) to Staticcatalogue GROUP by UPPER (source) hav ing count (UPPER (source)) >1) Order by UPPER (source) DESC;
The execution efficiency of this statement is very low, especially if the source field is not indexed. In part
time to group product data by merchant ID and remove the latest data Then update the SQL query statement to: SelectT_usercollectmerchant.collectid,t_usercollectmerchant.merchantid,t_usercollectmerchant.userid, LastUpdate
asLastnewtime fromt_usercollectmerchant Left JoinV_goodsinfo_merchantcount onV_goodsinfo_merchantcount.merchantid=T_usercollectmerchant.merchantidwhereUserid= +
Order byCollectiddes
SQL data Query optimization
Select A.id,rkno,a.packageno as Packageno,cust_no,lotno,count (*) as Count from ' Rk_record ' as a right join ' sys_barcode_1d _y ' as B on a.packageno = B.packageno where rkno = ' 201401030031 ' GROUP by Packageno,lotno ORDER by Packageno,lotno ASC
The Rkno,packageno index is included.
Currently the
One, the database design angle1. Avoid full table queries as much as possible, first consider indexing on the column of the Where level order by.2. Try to avoid null judgments in the WHERE clause, causing the engine to discard the index for a full table scan. Columns such as: Select ID from t where num is NULL, can be set to 0 in num, ensure no null appears3. Not all indexes are valid for queries, and if the fields contain large amounts of duplicate data, SQ
BackgroundThe system serializes the data object JSON into a database field.The report module needs to get the value of real-time data objects, and it is time-consuming and inefficient to make numerical judgments in SQL.AnalysisThe inefficiency of the current implementation is mainly the unreasonable design of the program structure.The SQL bottleneck is as follows, where wordstr is the statistic keyword, and 7 is the string length of wordstr.sum (len(@
, the engine cannot take advantage of the index, such as:SELECT * from T WHERE name like '%jhon% 'It is recommended to use full-text search.6. Force the query optimizer to use an index if necessaryUsing parameters in the WHERE clause can also cause a full table scan. Because SQL resolves local variables only at run time, the optimizer cannot say that the Access plan's selection is deferred until run time, a
In the case of a large record, the not in query will certainly be slow and unacceptable. Like what:SELECT A.* fromWHERE A.user_id not in (SELECT B.user_id from Table_b)the best way to find it now is to check it in seconds. For example, query the DEPT_ID data with table A and b not available:SELECT A.*from tb_dept A, Tb_dept_lev BWHERE= b.dept_id (+) and is NULLThe (+) number can be understood as: + is a
],
[extent1].[ Usertype] As [usertype],
[extent1].[ TEL] as [tel],
[extent1].[ CreateDate] As [createdate],
[extent1].[ Loginnum] As [Loginnum],
[extent1].[ Lastdate] As [lastdate],
[extent1].[ Shopid] as [shopid] from
[dbo].[ S_users] as [Extent1]
WHERE N'liuyangh' = [Extent1]. [LoginName] So instead of simply lambda expressions or delegate types, we try to use an expression tree to pass the argument. Why is that? Because Dbcontext.set public static iquerya
Debugging the following statement will find that the Slect statement without the plus (NOLOCK) will wait for the lock to be queriedBEGIN TRAN//Add and Subtract Tablockx (table Lock) When selected, SQL Server will place an exclusive lock on the entire table until the command or transaction ends. This prevents other processes from reading or modifying the data in the table. SELECT * from Student holds shared locks, no waiting, sharedUpdate Student Set s
fact there is only one member table and one distributed partitioned view per server. The location of the data is transparent to the application. NBSP;11, rebuilds the index DBCC REINDEX, DBCC INDEXDEFRAG, shrinks data and logs DBCC SHRINKDB,DBCC shrinkfile. Set up automatic shrink logging. For large databases do not set up automatic database growth, it can degrade server performance. There is a great deal of attention in the writing of T-SQL, the fol
Tags: style using SP on C log r ad Size1. Split the multi-table connection into smaller parts in order to execute2. Replace the outer connection with an inner connection.3. Priority line which can greatly reduce the operation of the return row, and then the production of the temporary table and other tables to the left connection.4. Modify the like program to remove% because there is no index to use.5. Use stored procedures to encapsulate which complex SQL
Label:Use the top command to isolate the highest CPU spid in a Linux system, And then press the following Select SID, serial#, Username Osuser, Machine Program Process To_char (Logon_time, ' yyyy/mm/dd hh24:mi:ss ') logon From V$session where Paddr in (select addr from v$process where spid in (' 24566 ')); Select S.sid, s.serial#, S.username, S.osuser, S.machine, S.program, S.process, To_char (S.logon_time, ' yyyy/mm/dd hh24:mi:ss ') logon, P.spid From V$session s,v$process p where 1=1 and S.
II. Improving SQL statements
Many people do not know how SQL statements are executed in SQL Server, fearing that their written SQL statements will be misunderstood by SQL Server. Like what:
SELECT * FROM table1 where Name=zhangsan and TID > 10000
and implementation:
SELECT *
Label:Connection query is the main task of SQL, only a good grasp of the connection query and its optimization method is mastered the essence of SQL. Recently encountered in the interview about the connection query questions, feel
optimization based on the WHERE clause, it is still necessary to understand how the query optimizer works, if not, and sometimes the query optimizer does not query quickly as you intended.During the query analysis phase, the query
COUNT (*) from T_user;+----------+|COUNT (*) |+----------+| 6552961 | View the slow query log. [Email protected] mysql]# more Localhost-slow.log # time:081026 19:46:34 # [email protected]: Root[root] @ localhost [] # query_time:11 lock_time:0 rows_sent:1 rows_examined:6552961 Select COUNT (*) from T_user; From the above log, you can find that the query time is more than 5 seconds of
At present, the application of network database has become one of the most widely used, and the security of database, performance is the most important thing that enterprises care about. The database is becoming the lifeblood of the enterprise, and optimizing the query solves every performance issue with regard to database applications, and here's what Microsoft SQL Server has done for us.Optimization
server| optimization
Some queries are inherently resource intensive. This is related to basic database and indexing issues. These queries are not inefficient because the query optimizer implements these queries in the most efficient way possible. However, they do consume a lot of resources, and Transact-SQL-oriented collections make these queries look inefficient
message to the client after each statement that executes the stored procedure and trigger.29. Try to avoid large transaction operation and improve the system concurrency ability. The SQL optimization method uses indexes to traverse tables more quickly. The index established by default is a non-clustered index, but sometimes it is not optimal. Under a non-clustered index, the data is physically randomly sto
Tags: _for cursors clu SQL query Query optimization resources commonly used problems improve1. To optimize the query, avoid full-table scanning as far as possible, and first consider establishing an index on the columns involved in the Where and order by. 2. You should try
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.