sql 語句記錄重複的問題
1樓:網友
加上distinct欄位就可以了啊。
select * from tablename where date in (select distinct date from tablename where ..
2樓:網友
select * from table where id in(select max(id) from table group by date)
這裡是同一時間。id最大的記錄。你可以改成min(id)最少。如果只隨便要一條的話。這個sql沒問題。如果要固定選中間的一條。那麼這個sql就還要改。
3樓:沒事做很無聊
set rs="")
sql="select * from 表名"
sql,conn,1,1
do while not
if shijian<>"and shijian=rs("date") then%>
if shijian<>"and shijian2<>"and shijian2<>shijian%>
set rs2="")
sql2="select * from 表名 where date='"rs("date")&
sql2,conn,1,1
顯示所有<%=rs("date")%的紀錄:
do while not >
紀錄id:<%rs2("id")%內容:<%rs2("content")%
shijian2=rs2("date")
loop end if
else%>
單獨沒重複的紀錄:<%rs("date")%紀錄id:<%rs("id")%內容:<%rs("content")%
end if%>
shijian=rs(date)
loop%>
我只是做了乙個簡單的例子,你自己可以在裡面改。
我沒有測試,剛手寫的,如果有問題,可以再問我。
注意,如果你的表裡,欄位型別是 數字或時間的,就用date="&rs("date")&
如果是文字的,就用date='"rs("date")&
乙個表中有重複記錄如何用sql語句查詢出來?
4樓:進濱海檢洲
不知道你什麼資料庫。
如果資料庫支援。
row_number()
函式的話,倒是很省事的。
首先建立測試表。
create
tabletest_delete(
namevarchar(10),value
int);go--
測試資料,其中。
張三100與王五80
是完全一樣的。
insert
intotest_delete
select
張三',100union
allselect
張三',100union
allselect
李四',80union
allselect
王五',80union
allselect
王五',80union
allselect
趙六',90union
allselect
趙六',70go
首先查詢一下,row_number
效果是否滿足預期。
select
row_number()
overpartition
byname,value
orderby(select1))
asno,name,value
fromtest_delete
nonamevalue
--1李四。
801王五802王五。
801張三1002張三。
趙六701趙六。
90從結果上可以看到,如果有重複的,完全一樣的話,no是有大於1的。
sql 語句問題,sql語句的問題?
這兩個在效能上應該是沒什麼差別的,或者說差別不大,也沒人去考證這個事實。但是這兩個sql在安全上卻有很大的差別,舉個例子,比如說你寫的是第一個 select from stu where id 1 假如你傳入的值是1,簡單的連線可能是這樣 jsp?id 1。然後拼接字串就可以得到上面那個語句了。但是...
sql查詢語句的問題,sql查詢語句問題?
日期欄位存的是日期型別 2020 03 25 還是時間型別 2020 03 25 12 03 01 如果是後者,那查詢時需要帶上時間點 日期 2020 03 25 and 日期 2020 03 25 23 59 59 前面不帶時間的預設是2020 03 25 00 00 00,後面帶時間的包含了25...
sql查詢問題,sql語句的問題?
定位字串中 取子串,轉為整數,儲存在一個記憶體表中。執行動態了。sql語句的問題?在sql server中兩者沒有區別,但在oracle的sql語句中,delete from是不標準的語法,執行無法通過。oracle下執行delete from語句 成功 oracle下執行delete from語句...